IOException
sera générée.
En Java, il existe une classe Exception
. Si l'on
désire créer un nouveau "type" d'exception, il suffit d'étendre
la classe, comme présenté ci-dessous :
Remarquons que
class divisionParZeroException extends Exception {
}
Exception
et Error
sont des
sous-classes de Throwable
. Les objets de la
classe
Error
sont des erreurs internes à la machine virtuelle Java,
c'est pourquoi il faut être très vigilant si l'on désire les récupérer.
En effet, il ne serait pas très judicieux d'ignorer une exception de type
"Plus de mémoire".
Si dans un bloc (une méthode), on fait
appel à une méthode qui peut
potentiellement générer une exception, on doit soit essayer de la
récupérer avec try
, soit ajouter
le mot clé throws
dans la déclaration du bloc. Si on ne le fait
pas, il en résultera une erreur à la compilation. Il n'est toutefois pas requis
de traiter les exceptions et erreurs déclarées dans le paquetage
java.lang
, car celles-ci peuvent se déclencher partout.
Pour générer une exception, il suffit d'utiliser throw
, suivi d'un objet dont la classe est dérivée de Throwable
. Si l'on veut
générer une exception dans une méthode, avec throw
, il faudra
l'indiquer dans la déclaration de méthode, en utilisant le mot clé throws
.
throw new Exception();
throw new IOException("fichier ABSENT.TXT non trouve");
throw e; // si on ne fait que propager l'exception e
Un exemple complet de l'utilisation des exceptions est donné
à la page décrivant la clause try
.
throws
, qui prend un s. Lorsque
l'on génére l'exception, on utilise throw
, qui ne prend pas de s.