code: public void setTime(
          int hour,
          int minute,
          int second,
          BigDecimal fractional) {
  
          setHour(hour);
          setMinute(minute);
          setSecond(second);
          setFractionalSecond(fractional);
      }
docs: <p>Set time as one unit, including the optional infinite precision
  fractional seconds.</p>
  
  @param hour value constraints are summarized in
  <a href="#datetimefield-hour">hour field of date/time field mapping table</a>.
  @param minute value constraints are summarized in
  <a href="#datetimefield-minute">minute field of date/time field mapping table</a>.
  @param second value constraints are summarized in
  <a href="#datetimefield-second">second field of date/time field mapping table</a>.
  @param fractional value of <code>null</code> indicates this optional
  field is not set.
  
  @throws IllegalArgumentException if any parameter is
  outside value constraints for the field as specified in
  <a href="#datetimefieldmapping">date/time field mapping table</a>.