Class Second

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable, TimePeriod, org.jfree.date.MonthConstants

    public class Second
    extends RegularTimePeriod
    implements java.io.Serializable
    Represents a second in a particular day. This class is immutable, which is a requirement for all RegularTimePeriod subclasses.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int FIRST_SECOND_IN_MINUTE
      Useful constant for the first second in a minute.
      static int LAST_SECOND_IN_MINUTE
      Useful constant for the last second in a minute.
      • Fields inherited from interface org.jfree.date.MonthConstants

        APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER
    • Constructor Summary

      Constructors 
      Constructor Description
      Second()
      Constructs a new Second, based on the system date/time.
      Second​(int second, int minute, int hour, int day, int month, int year)
      Creates a new second.
      Second​(int second, Minute minute)
      Constructs a new Second.
      Second​(java.util.Date time)
      Constructs a new instance from the specified date/time and the default time zone..
      Second​(java.util.Date time, java.util.TimeZone zone)
      Deprecated.
      As of 1.0.13, use the constructor that specifies the locale also.
      Second​(java.util.Date time, java.util.TimeZone zone, java.util.Locale locale)
      Creates a new second based on the supplied time and time zone.
    • Constructor Detail

      • Second

        public Second()
        Constructs a new Second, based on the system date/time.
      • Second

        public Second​(int second,
                      Minute minute)
        Constructs a new Second.
        Parameters:
        second - the second (0 to 24*60*60-1).
        minute - the minute (null not permitted).
      • Second

        public Second​(int second,
                      int minute,
                      int hour,
                      int day,
                      int month,
                      int year)
        Creates a new second.
        Parameters:
        second - the second (0-59).
        minute - the minute (0-59).
        hour - the hour (0-23).
        day - the day (1-31).
        month - the month (1-12).
        year - the year (1900-9999).
      • Second

        public Second​(java.util.Date time)
        Constructs a new instance from the specified date/time and the default time zone..
        Parameters:
        time - the time (null not permitted).
        See Also:
        Second(Date, TimeZone)
      • Second

        public Second​(java.util.Date time,
                      java.util.TimeZone zone)
        Deprecated.
        As of 1.0.13, use the constructor that specifies the locale also.
        Creates a new second based on the supplied time and time zone.
        Parameters:
        time - the instant in time.
        zone - the time zone.
      • Second

        public Second​(java.util.Date time,
                      java.util.TimeZone zone,
                      java.util.Locale locale)
        Creates a new second based on the supplied time and time zone.
        Parameters:
        time - the time (null not permitted).
        zone - the time zone (null not permitted).
        locale - the locale (null not permitted).
        Since:
        1.0.13
    • Method Detail

      • getSecond

        public int getSecond()
        Returns the second within the minute.
        Returns:
        The second (0 - 59).
      • getMinute

        public Minute getMinute()
        Returns the minute.
        Returns:
        The minute (never null).
      • peg

        public void peg​(java.util.Calendar calendar)
        Recalculates the start date/time and end date/time for this time period relative to the supplied calendar (which incorporates a time zone).
        Specified by:
        peg in class RegularTimePeriod
        Parameters:
        calendar - the calendar (null not permitted).
        Since:
        1.0.3
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests the equality of this object against an arbitrary Object.

        This method will return true ONLY if the object is a Second object representing the same second as this instance.

        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - the object to compare (null permitted).
        Returns:
        true if second and minute of this and the object are the same.
      • hashCode

        public int hashCode()
        Returns a hash code for this object instance. The approach described by Joshua Bloch in "Effective Java" has been used here:

        http://developer.java.sun.com/developer/Books/effectivejava /Chapter3.pdf

        Overrides:
        hashCode in class java.lang.Object
        Returns:
        A hash code.
      • compareTo

        public int compareTo​(java.lang.Object o1)
        Returns an integer indicating the order of this Second object relative to the specified object: negative == before, zero == same, positive == after.
        Specified by:
        compareTo in interface java.lang.Comparable
        Parameters:
        o1 - the object to compare.
        Returns:
        negative == before, zero == same, positive == after.
      • parseSecond

        public static Second parseSecond​(java.lang.String s)
        Creates a new instance by parsing a string. The string is assumed to be in the format "YYYY-MM-DD HH:MM:SS", perhaps with leading or trailing whitespace.
        Parameters:
        s - the string to parse.
        Returns:
        The second, or null if the string is not parseable.