图片瀑布流网站源码,摄影作品网站建设方案书,怎么做网站的后台维护,新冠政策最新20条一年前#xff0c;即2014年3月18日 #xff0c;发布了Java SE 8#xff0c;并伴随着通过lambda表达式和streams API实现了功能性编程的幸福。 这对于我们所有的Java生态系统都是个好消息#xff0c;许多人已经升级到Java8。Stack Overflow已经提出了大约2500个有关Java 8的… 一年前即2014年3月18日 发布了Java SE 8并伴随着通过lambda表达式和streams API实现了功能性编程的幸福。 这对于我们所有的Java生态系统都是个好消息许多人已经升级到Java8。Stack Overflow已经提出了大约2500个有关Java 8的问题 Brian Goetz 亲自 回答了 。 此外 Google趋势显示搜索量大幅度增加 但是即使在一年之后javac编译器和三个主要的IDE编译器都还没有完全支持Java 8。 最近在堆栈溢出中询问了用户问题的这个问题 Lambda类型推论推断Lambda未抛出的异常类型 该问题显示以下代码 class TestException extends Exception {
}interface TaskE extends Exception {void call() throws E;
}public class TaskPerformer {private E extends Exception void perform(TaskE task) throws E {task.call();}public static void main(String[] args) {// compilation errornew TaskPerformer().perform(() - {try {throw new TestException();} catch (TestException e) {return;}});}
} 误报编译错误可能已通过问题429430解决 。 在任何情况下它都不能与Eclipse 4.5.0 M5一起复制它可以作为开发人员版本使用 使用Java 8编译Java代码实际上从未比以前更加容易。 上面的错误是由以下几种非常细微的组合产生的 已检查与未检查的异常 泛型和例外 Lambda表达式 类型推断 流量分析 如果您曾经看过编译器源代码那么您不禁会为其他人为您完成这项工作感到高兴 顺便说一句当您查看jOOQ或Hibernate的源代码时情况也是如此。 我们的编译器在哪里 我们到了那里。 我个人的感觉是javac的早期访问版本最有效。 例如我正在使用 build 1.8.0_40-ea-b23 免责声明本文是在发表之前撰写的。1.8.0_40现在已解决许多问题 …虽然您可能不想使用这样的早期访问版本进行生产。 当然使用javac和Maven进行构建的IDE都可以很好地工作。 Eclipse有点滞后–有时可能很烦人。 你们中的一些非Eclipse用户可能会傻笑起来并准备好Eclipse与IntelliJ rants并且您知道……有这样的说法 素食主义者IntelliJ用户Mac用户和Linux用户走进了酒吧。 我怎么知道 2分钟后全黑酒吧知道 关于该主题我们实际上有整篇文章 事实是所有编译器团队都在努力修复大量错误。 即使使用Javac进行编译IntelliJ仍可能在您的IDE中直观地显示一些误报。 来自NetBeans的Geertjan最近修复了我们报告的一堆bug 。 而且Eclipse附带了自己的非常复杂的增量Java编译器。 这是用于快速原型制作的出色编译器但是缺点是编译内容与其他版本略有不同。 在开发jOOQ和jOOλ的同时 我们发现了Eclipse中的许多错误-许多错误已在Eclipse Mars中修复。 例如 从Lambda表达式推断出错误的通用方法类型 单击Lambda箭头上的F3和Double Colon运算符不起作用 Lambda可以非法传递给不可见的方法参数 在Lambda表达式中自动完成时插入了多余的分号 菱形运算符阻止建议创建新的构造函数 从lambda表达式内部访问不可见成员会产生误导性的编译错误 当lambda表达式将静态方法调用与装箱/拆箱和一元减运算符组合在一起时会产生错误的编译错误 还有很多… 我们到了那里。 如果可以请使用lambda和流并在代码中尽可能多地应用类型推断。 而且如果您发现错误请报告。 我们可能都在使用这三个IDE之一。 您报告的每个错误对于采用Java 8的障碍都较小。 以下是开始注册错误的链接 Eclipse https //bugs.eclipse.org/bugs IntelliJ https //youtrack.jetbrains.com NetBeans https //netbeans.org/bugzilla 翻译自: https://www.javacodegeeks.com/2015/03/one-year-after-java-8s-release-ides-and-compilers-are-not-fully-ready-yet.html