【问题标题】:Syntax error for catch block, works on one computer, but not on the other?catch 块的语法错误,在一台计算机上有效,但在另一台计算机上无效?
【发布时间】:2014-10-15 01:08:01
【问题描述】:

我的这部分代码无法在我的笔记本电脑上编译,但它在我的台式机上运行良好。我在这里错过了一些简单的东西吗?唯一的区别是我使用的是 DR JAVA 而不是 eclipse。它给了我一个语法错误,说令牌“|”上的语法错误,。预期的。这是代码的捕获行。

protected void done() {
         try {
          get();
         } catch (InterruptedException | ExecutionException e) {
          // do something with any exceptions here

         }
        }

【问题讨论】:

  • 这是一个旧的新功能。自 Java 7 以来,catch 表达式中的 | 只是 Java 语言的一部分。
  • 那我该如何解决这个问题?
  • 你检查 Dr Java 是否在使用旧版本,如果可能的话切换它。
  • @Remixt 升级到 Java 7 哈哈
  • 哦,当我真正注意到您的第一条评论时,这一点非常明显。对不起,谢谢。

标签: java syntax exception-handling syntax-error


【解决方案1】:

你的语法没有问题,这应该可以正常工作。这是一个旧错误,与 java 7 或更高版本无关。我猜你在mac上使用DR JAVA? mac 上的 JAVA DR 与 Java 7 或 8 不兼容,这就是您收到该错误的原因。

【讨论】:

  • 不,我没有使用 mac。
  • 我升级了我的 DR java 应用程序,现在它给了我错误 1 ​​错误和 23 个警告: ------------- *** 错误 *** -- ------------ 错误:1.7以下的源级别不允许使用多捕获参数
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-02-05
  • 2023-02-03
  • 2016-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多