Bonjour,
Je souhaiterai qu'un constructeur lance une exception si les conditions ne sont pas respectées et que l'exception soit traitée dans une autre classe. Voici un exemple :
Citation :
public Classe1 () { if (exemplaire.nonDisponible()) throw (new NonDisponibleException()); }
|
Vous remarquerez que je n'ai pas mis "public Classe () throws NonDisponibleException {" car lorsque je le mets, Eclipse ne le considère plus comme un constructeur.
Ensuite, je souhaiterais traiter l'exception dans une autre classe vu que c'est cette dernière qui va appeler le constructeur. Cependant, ça ne marche pas. J'obtiens des erreurs du genre "Unreachable catch block for NonDisponibleException" puisque dans l'autre classe, j'écris :
Citation :
try{ Classe c = new Classe(); }catch (NonDisponibleException e){ ... }
|
et que "throw (new NonDisponibleException());" n'apparaît pas.
Pourriez-vous me donner une astuce pour contourner ce désagrément s'il vous plaît.
Merci
Rocklee
Message édité par rocklee le 24-05-2008 à 18:22:17