Donc, je pensais avoir une bonne compréhension de base de la gestion des exceptions en Java, mais je lisais récemment du code qui me donnait de la confusion et des doutes. Mon principal doute que je veux aborder ici est quand devrait une utilisation personne jette dans une déclaration de méthode Java comme suit:Quand utiliser throws dans une déclaration de méthode Java?
public void method() throws SomeException
{
// method body here
}
De la lecture des messages similaires, je crois que lancers francs est utilisé comme une sorte de déclaration que SomeException a pu être levée pendant l'exécution de la méthode.
Ma confusion vient de code qui ressemblait à ceci:
public void method() throws IOException
{
try
{
BufferedReader br = new BufferedReader(new FileReader("file.txt"));
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
est-il une raison que vous souhaitez utiliser un lancers francs dans cet exemple? Il semble que si vous faites simplement des exceptions de gestion d'exception de quelque chose comme une exception IOException, vous auriez simplement besoin du bloc try/catch et c'est tout.
Les exceptions non vérifiées doivent-elles également être déclarées dans la signature de la méthode avec un 'throw', ou est-ce pratique de n'utiliser que 'throws' pour les exceptions vérifiées? – Cody