Class Millisecond

All Implemented Interfaces:
Serializable, Comparable, TimePeriod, org.jfree.date.MonthConstants

public class Millisecond
extends RegularTimePeriod
implements Serializable
Represents a millisecond.

This class is immutable, which is a requirement for all RegularTimePeriod subclasses.

See Also:
Serialized Form
  • Field Details

    • FIRST_MILLISECOND_IN_SECOND

      public static final int FIRST_MILLISECOND_IN_SECOND
      A constant for the first millisecond in a second.
      See Also:
      Constant Field Values
    • LAST_MILLISECOND_IN_SECOND

      public static final int LAST_MILLISECOND_IN_SECOND
      A constant for the last millisecond in a second.
      See Also:
      Constant Field Values
  • Constructor Details

    • Millisecond

      public Millisecond()
      Constructs a millisecond based on the current system time.
    • Millisecond

      public Millisecond​(int millisecond, Second second)
      Constructs a millisecond.
      Parameters:
      millisecond - the millisecond (0-999).
      second - the second.
    • Millisecond

      public Millisecond​(int millisecond, int second, int minute, int hour, int day, int month, int year)
      Creates a new millisecond.
      Parameters:
      millisecond - the millisecond (0-999).
      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).
    • Millisecond

      public Millisecond​(Date time)
      Constructs a millisecond.
      Parameters:
      time - the time.
    • Millisecond

      public Millisecond​(Date time, TimeZone zone)
      Creates a millisecond.
      Parameters:
      time - the instant in time.
      zone - the time zone.
  • Method Details

    • getSecond

      public Second getSecond()
      Returns the second.
      Returns:
      The second.
    • getMillisecond

      public long getMillisecond()
      Returns the millisecond.
      Returns:
      the millisecond.
    • previous

      public RegularTimePeriod previous()
      Returns the millisecond preceding this one.
      Specified by:
      previous in class RegularTimePeriod
      Returns:
      the millisecond preceding this one.
    • next

      public RegularTimePeriod next()
      Returns the millisecond following this one.
      Specified by:
      next in class RegularTimePeriod
      Returns:
      the millisecond following this one.
    • getSerialIndex

      public long getSerialIndex()
      Returns a serial index number for the millisecond.
      Specified by:
      getSerialIndex in class RegularTimePeriod
      Returns:
      The serial index number.
    • equals

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

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

      Overrides:
      equals in class Object
      Parameters:
      object - the object to compare
      Returns:
      true if milliseconds and seconds of this and 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 Object
      Returns:
      A hashcode.
    • compareTo

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

      public long getFirstMillisecond()
      Returns the first millisecond of the time period.
      Overrides:
      getFirstMillisecond in class RegularTimePeriod
      Returns:
      the first millisecond of the time period.
    • getFirstMillisecond

      public long getFirstMillisecond​(Calendar calendar)
      Returns the first millisecond of the time period.
      Specified by:
      getFirstMillisecond in class RegularTimePeriod
      Parameters:
      calendar - the calendar.
      Returns:
      the first millisecond of the time period.
    • getLastMillisecond

      public long getLastMillisecond()
      Returns the last millisecond of the time period.
      Overrides:
      getLastMillisecond in class RegularTimePeriod
      Returns:
      the last millisecond of the time period.
    • getLastMillisecond

      public long getLastMillisecond​(Calendar calendar)
      Returns the last millisecond of the time period.
      Specified by:
      getLastMillisecond in class RegularTimePeriod
      Parameters:
      calendar - the calendar.
      Returns:
      the last millisecond of the time period.