je me suis penché plus en profondeur sur les exceptions. Voici mes questions.
1) j'ai trouvé dans un bouquin les explications suivantes :
Donc d'après ceci, d'une part les exceptions hors contrôle ne dérivent pas forcément de "RuntimeException" comme il est précisé dans l'énoncé., mais peuvent dériver de "Exception" ?Dans les exceptions prédéfinies standards (qui dérivent de Exception), il y a 2 sortes :
- les exceptions explicites (sous contrôle) qui doivent être traitées par
une méthodes ou bien être mentionnées dans la clause throws
- les exceptions implicites (hors contrôle) qui n'ont pas à être mentionnées dans une clause throws et on est pas obligé de les traiter
D'autre part, d'après ce qui est dit, on devrait traiter les exceptions explicites. Mais il y en a une tonne (par exemple "ClassNotFoundException" mais il y en a beaucoup d'autres). Donc comment les traiter ne sachant pas lesquelles seront levées à priori ?
2)
Dans la doc de Sun, j'ai trouvé un constructeur de la classe "Exception" qui est le suivant :
Est-ce que quelqu'un aurait un exemple d'utilisation de ce constructeur ? Que représente exactement "Throwable" ?Exception(String message, Throwable cause)