Cours Java
TD2

Alain Plantec

1 Les exceptions

Le programme suivant traite les erreurs de saisie «à la C». Améliorez ce programme en utilisant les exceptions : créez une classe exception spécialisée pour gérer l'erreur de saisie. La classe exception créée doit permettre l'affichage de l'entier invalide.
import java.io.*;


class TraiteErreur {
  private int val;
  private int max;
  private int min;

  public TraiteErreur(int lemin, int lemax) {
    val = lemin;  min = lemin; max = lemax;
  }

  // Saisie d'un entier sur un Stream et l'affecte a val si pas d'erreur
  // renvoit false si erreur : (val < min || val > max), true sinon
  public boolean saisirVal(BufferedReader is) {
      String s = "0";
      try {
        s = is.readLine();
      } catch (java.io.IOException ioe) {
	System.out.println(ioe);
      }
      int i = (Integer.valueOf(s)).intValue();
      if (i < min || i > max) {
	  return false;
      }
      val = i;
      return true;
  }
  
  public static void main (String [] args) {
    BufferedReader dis = new BufferedReader(new InputStreamReader(System.in));
    TraiteErreur te = new TraiteErreur(0,10);
    if (!te.saisirVal(dis)) {
      System.out.println("Erreur de saisie");
    } else {
      System.out.println("Saisie OK");
    }
  }
}





Plantec Alain
2002-02-21