code: public static Months months(int months) {
          switch (months) {
              case 0:
                  return ZERO;
              case 1:
                  return ONE;
              case 2:
                  return TWO;
              case 3:
                  return THREE;
              case 4:
                  return FOUR;
              case 5:
                  return FIVE;
              case 6:
                  return SIX;
              case 7:
                  return SEVEN;
              case 8:
                  return EIGHT;
              case 9:
                  return NINE;
              case 10:
                  return TEN;
              case 11:
                  return ELEVEN;
              case 12:
                  return TWELVE;
              case Integer.MAX_VALUE:
                  return MAX_VALUE;
              case Integer.MIN_VALUE:
                  return MIN_VALUE;
              default:
                  return new Months(months);
          }
      }
docs: Obtains an instance of <code>Months</code> that may be cached.
  <code>Months</code> is immutable, so instances can be cached and shared.
  This factory method provides access to shared instances.
  
  @param months  the number of months to obtain an instance for
  @return the instance of Months