Could anyone explain me why in the last lines, br is not recognized as variable? I've even tried putting br in the try clause
, setting it as final
, etc. Does this have anything to do with Java not support closures? I am 99% confident similar code would work in C#.
private void loadCommands(String fileName) {
try {
final BufferedReader br = new BufferedReader(new FileReader(fileName));
while (br.ready()) {
actionList.add(CommandFactory.GetCommandFromText(this, br.readLine()));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) br.close(); //<-- This gives error. It doesn't
// know the br variable.
}
}
Thanks