next up previous
Next: Le parallélisme Up: Les exceptions Previous: Un exemple

Gérer ses propres exceptions

Il peut être utile d'avoir ses propres classes pour des exceptions.


public class Vacances extends Exception {
    public Vacances(){super("En vacances");}
    public Vacances(String st){super(st);}
}

Une utilisation possible :


import java.util.*;

public class Agenda {

    Calendar calendrier;

    public Agenda(){
        calendrier = new GregorianCalendar();
    }

    public void planning (int nbJours) {
        for (int i=0; i < nbJours; i++){
            try {
                afficher();
            }
            catch(Vacances v){
                System.out.println(v.getMessage());
            }
            calendrier.roll(Calendar.DATE, true);
        }
    }
    
    public void afficher () throws Vacances {
        if (calendrier.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY)
            throw new Vacances("Jamais le dimanche");
        if (calendrier.get(Calendar.DAY_OF_MONTH)==1)
           throw new Vacances("Jamais le premier jour du mois");
        System.out.println(calendrier.getTime());
        for (int h=8; h < 17; h++){
           System.out.println(h + " heures :");
        }
    }
    
    public static void main(String args[]){
        Agenda ag = new Agenda();
        System.out.println("Debut");
        ag.planning(Integer.parseInt(args[0]));
        System.out.println("Fin");
    }
	
}



Alain GRIFFAULT
2001-09-27