Bonjour à tous,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
public int loadCounter(String filename) {
  FileReader reader = null;
  int counter;
  try {
    reader = new FileReader(filename);
    ...
    return counter;
  } catch(FileNotFoundException e) {
    throw new NotFoudnException("File " + filename, e);
  } finally {
    if( reader != null ) reader.close();
  }
}
est-il vraiment nécessaire de mettre les instructions "if( reader != null ) reader.close();" dans un bloc finally ?
si j'ai bien compris si une exception est levée dans le try, alors on execute les instructions du catch correspondant à l'exception, puis les instructions suivantes sont executées.

Je pense donc qu'ici le finally est obligatoire à cause du throw, ai-je raison ?

merci à vous