【问题标题】:does this try-catch-with-resourcers autoclose? [duplicate]这个 try-catch-with-resourcers 会自动关闭吗? [复制]
【发布时间】:2015-09-12 01:28:56
【问题描述】:

这个 try-catch-with-resources 会自动关闭吗? 它在到达末尾之前在正文中有一个return。 它还会自动关闭流吗?

    try (FileReader reader = new FileReader(characterFile)) {
        final SavedPlayer savedPlayer = GSON.fromJson(reader, SavedPlayer.class);

        return new Login(player, LoginType.SUCCESSFUL);
    } catch (IOException e) {
        e.printStackTrace();
        return new Login(player, LoginType.INPUT_FAILURE);
    }

【问题讨论】:

  • AFAKI try-with-resources 有点像try-finally,保证始终执行关闭操作

标签: java


【解决方案1】:

是的。

try-with-resources Statement (Java Tutorials) 读取(部分)

try-with-resources 语句确保每个资源在语句结束时关闭。

【讨论】:

  • "语句结束时关闭" 但是语句结束前有return?
  • 没关系,它在语句的末尾关闭(在那种情况下return 语句的末尾 )。
猜你喜欢
  • 2014-11-27
  • 2014-12-18
  • 2012-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-12
  • 1970-01-01
  • 2020-04-02
相关资源
最近更新 更多