Class AncientJulianLeapYears

java.lang.Object
net.time4j.history.AncientJulianLeapYears

public final class AncientJulianLeapYears extends Object

Represents a historic leap year pattern for the early days of julian calendar before AD 8.

The real historic leap years as triennal pattern before AD 8 are not yet known for certainty and are controversely debated among historicians. Anyway, all non-proleptic patterns start the julian calendar in 45 BC and are to be considered invalid before that year. These patterns mainly serve for comparison and must not be interpreted as absolute truth.

Since:
3.11/4.8
Author:
Meno Hochschild
  • Field Details

    • SCALIGER

      public static final AncientJulianLeapYears SCALIGER

      Proposed by Joseph Justus Scaliger in year 1583, the leap years are assumed to be 42, 39, 36, 33, 30, 27, 24, 21, 18, 15, 12, 9 (BC).

      This is the most widely used assumption among historicians.

  • Method Details

    • of

      public static AncientJulianLeapYears of(int... bcYears)

      Creates a new sequence of historical julian leap years before AD 8.

      Example: In order to model the proposal of Matzat (1883), users can use the code of(44, 41, 38, 35, 32, 29, 26, 23, 20, 17, 14, 11, -3). The last parameter -3 stands here for the year AD 4 using the formula 1 - year which shall also be a leap year in the version of Matzat. For an overview about different proposals see Wikipedia.

      Parameters:
      bcYears - positive numbers for BC-years
      Returns:
      new instance
      Throws:
      IllegalArgumentException - if given years are missing or out of range BC 45 <= bcYear < AD 8
      Since:
      3.11/4.8
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object