## org.jfree.date
Class AnnualDateRule

    java.lang.Object
      org.jfree.date.AnnualDateRule

All Implemented Interfaces:
  java.lang.Cloneable

Direct Known Subclasses:
  DayAndMonthRule, DayOfWeekInMonthRule, EasterSundayRule, RelativeDayOfWeekRule

    public abstract class AnnualDateRule

extends java.lang.Object
implements java.lang.Cloneable

The base class for all 'annual' date rules: that is, rules for generating one date for any given year.

One example is Easter Sunday (which can be calculated using published algorithms).

Author:
  David Gilbert

Constructor Summary
`protected` `AnnualDateRule()` Default constructor.

Method Summary
`java.lang.Object` `clone()` Returns a clone of the rule.
`abstract SerialDate` `getDate(int year)` Returns the date for this rule, given the year.

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### AnnualDateRule

    protected AnnualDateRule()

  Default constructor.

Method Detail

### getDate

    public abstract SerialDate getDate(int year)

  Returns the date for this rule, given the year.

  Parameters:
    `year` - the year (1900 <= year <= 9999).
  Returns:
    the date for this rule, given the year.

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Returns a clone of the rule.

  You should refer to the documentation of the clone() method in each subclass for exact details.

  Overrides:
    `clone` in class `java.lang.Object`
  Returns:
    a clone of the rule.
  Throws:
    `java.lang.CloneNotSupportedException` - if the rule is not clonable.