public class Datum { private static final int[] MONATSLAENGEN = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; private int tag; private int monat; private int jahr; private boolean isSchaltjahr; public Datum(int tag, int monat, int jahr) { // wirft im Fehlerfall eine Ausnahme (siehe Hinweise im Aufgabentext) } public static int getMonatslaenge(int monat, int jahr) { // gibt Laenge des Monats zurueck, beruecksichtigt Schaltjahre } public static boolean isSchaltjahr(int jahr) { // gibt true zurueck, wenn das uebergebene Jahr ein Schaltjahr // ist, ansonsten false (siehe Hinweise im Aufgabentext) } public boolean equals(Datum a) { // ueberprueft, ob this und a das gleiche Datum darstellen } public boolean isGleicherTag(Datum a) { // ueberprueft, ob Tag und Monat gleich sind // (ohne Beruecksichtigung des Jahres) } public String toString() { // gibt eine passende String-Darstellung des Datums zurueck } public Datum morgen() { // gibt das Datum von this + 1 Tag zurueck } public Datum gestern() { // gibt das Datum von this - 1 Tag zurueck } }