code: private static LocalTime create(int hour, int minute, int second, int nanoOfSecond) {
          if ((minute | second | nanoOfSecond) == 0) {
              return HOURS[hour];
          }
          return new LocalTime(hour, minute, second, nanoOfSecond);
      }
docs: Creates a local time from the hour, minute, second and nanosecond fields.
  <p>
  This factory may return a cached value, but applications must not rely on this.
  
  @param hour  the hour-of-day to represent, validated from 0 to 23
  @param minute  the minute-of-hour to represent, validated from 0 to 59
  @param second  the second-of-minute to represent, validated from 0 to 59
  @param nanoOfSecond  the nano-of-second to represent, validated from 0 to 999,999,999
  @return the local time, not null