Dans la déclaration d'une méthode methode, le mot clé throws permet de signaler le ou les exceptions qu'elle sera susceptible de lancer.

public int uneMethode() throws ClasseException {
  ...
}

La signalisation des exceptions est une obligation si :

  • une méthode contient une ou plusieurs instructions throw chargées de déclencher des exceptions,
  • la méthode ne dispose pas d'un mécanisme d'interception suffisant pour les capturer toutes.

Dans le cas des exceptions de types RuntimeException, Error et toutes leurs descendances, il n'est pas nécessaire de signaler le risque de génération d'exception.

La déclaration de signalisation d'une exception permet de construire des applications sûres où toutes les exceptions nécessitant un traitement particulier, seront soit gérées, soit intentionnellement ignorées lors du développement d'un programme java.

Les exceptions susceptibles de se produire par des méthodes appelées à partir d'une autre méthode doivent être impérativement signalées dans cette dernière, si aucune signalisation (throws) ou aucun mécanisme d'interception (try...catch) n'a été conçu dans les méthodes appelées.