code: public static Short valueOf(short s) {
          final int offset = 128;
          int sAsInt = s;
          if (sAsInt >= -128 && sAsInt <= 127) { // must cache
              return ShortCache.cache[sAsInt + offset];
          }
          return new Short(s);
      }
docs: Returns a {@code Short} instance representing the specified
  {@code short} value.
  If a new {@code Short} instance is not required, this method
  should generally be used in preference to the constructor
  {@link #Short(short)}, as this method is likely to yield
  significantly better space and time performance by caching
  frequently requested values.
  
  This method will always cache values in the range -128 to 127,
  inclusive, and may cache other values outside of this range.
  
  @param  s a short value.
  @return a {@code Short} instance representing {@code s}.
  @since  1.5