
public class Mois implements Comparable {

    private int numero;

    private Mois(int n) {
	numero = n;
    }
    
    public static final Mois JANVIER = new Mois(1);
    public static final Mois FEVRIER = new Mois(2);
    public static final Mois MARS = new Mois(3);
    public static final Mois AVRIL = new Mois(4);
    public static final Mois MAI = new Mois(5);
    public static final Mois JUIN = new Mois(6);
    public static final Mois JUILLET = new Mois(7);
    public static final Mois AOUT = new Mois(8);
    public static final Mois SEPTEMBRE = new Mois(9);
    public static final Mois OCTOBRE = new Mois(10);
    public static final Mois NOVEMBRE = new Mois(11);
    public static final Mois DECEMBRE = new Mois(12);

    private static final int[] NB_JOURS = 
	new int[] {31,28,31,30,31,30,31,31,30,31,30,31};

    private static final String[] NOM_MOIS = 
	new String[] {"Janvier","Fevrier","Mars","Avril","Mai",
		      "Juin","Juillet","Aout","Septembre",
		      "Octobre","Novembre","Decembre"};

    private static final Mois[] CAL = 
	new Mois[] {JANVIER,FEVRIER,MARS,AVRIL,MAI,JUIN,JUILLET,
		    AOUT,SEPTEMBRE,OCTOBRE,NOVEMBRE,DECEMBRE};

    public String toString() {
	return NOM_MOIS[numero-1];
    }

    public static Mois getMois(int n) {
	return CAL[n-1];
    }

    public int getNumero() {
	return numero;
    }

    public int compareTo(Object o) {
	// a completer...
    }
    
    /**
     * Methode renvoyant le nombre de jours dans le mois.
     * @param bissextile : boolean qui indique si le mois 
     * appartient a une annee bissextile ou pas
     * @return int = le nombre de jours dans le mois
     */
    public int nombreDeJours(boolean bissextile) {
	// a completer...
    }
}
