Java 8给了我们界面中的默认方法。这些方法具有body和给界面的行为,不仅是空的签名。 如果你有两种公共方法几乎相同的话,你会怎么做? 很可能将尝试以私有方式移动通用代码,并从公共方法中调用它们。但是在类似的情况下,你会在接口中使用两种默认方法,而不是类中的两种公共方法吗? 在Java 9中,可以使用完全相同的方法,并具有通用逻辑的私有方法,此方法将不会成为你API的一部分。 7.语言和语法的改进 现在用资源语句编写try将更容易。 以前,执行后必须关闭的所有资源必须在try子句中初始化,如下例所示: 从Java 9开始,我们可以在try子句中使用最终和有效的最终资源: 直播,程序员不妨先了解" src="http://img.mp.itc.cn/upload/20170804/49727ac7ee27465c91bc5b73f5c4db43.jpg" /> 从Java 9变量名称不能由单个下划线(“_”)组成。 可以在my_var中的变量名中写下划线,但是单独的下划线将导致错误。背后的原因是下划线将被保留以供将来在语言中使用。 我们将能够与匿名内部类共同使用钻石操作符(diamond operator): 8.增强处理API 到目前为止,管理和控制操作系统进程的能力有限。 此外,你编写的执行此类交互的代码取决于操作系统。 新版本将扩展与操作系统进行交互的能力。将添加新的方法来处理PID管理,进程名称和状态,子进程管理等等。 检索当前进程PID并在所有操作系统上运行的示例代码将如下所示: 9.Java REPL = Jshell 最后但并非最不重要的Java9将包括项目Kulla()中的Read Evaluate Print Loop(REPL)工具。这个命令行工具被称为jshell,如果你想自己编写几行代码来测试一下,这将是完美的工具。 只需执行简单的命令,就不需要使用main方法的新类。 我们在新版本中看不到什么? 有几个好的功能从即将发布的版本中删除。但是,可以在Java 10中等待。 一个标准化和轻量级的JSON API被许多java开发人员所青睐。但是由于资金问题无法在Java 9中见到,但并不会削减掉。Java平台首席架构师Mark Reinhold在JDK 9邮件列中说:“这个JEP将是平台上的一个有用的补充,但是在计划中,它并不像Oracle资助的其他功能那么重要,可能会重新考虑JDK 10或更高版本中实现。 ” (责任编辑:本港台直播) |