JAVA 11已经发布了近1年的时间,增加了一些新的特性和api,
同时也删除了一些特性和api,还有一些效能和垃圾回收的改进。
作为一名一线的开发人员,JAVA 11给我们带来哪些便利之处呢?下面我们来体验一下。
在Lambda表示式中使用var
本地变数型别var是java 10提出的新概念,它可以从上下文中推断出本地变数的型别,从而提高程式码可读性。
我们看看下面的例子:
使用var声明后,上面的程式码可以改写成:
但是在JAVA 10中,var变数不能在lambda表示式中宣告,在JAVA 11中,解决了这个问题。
我们可以在lambda表示式中使用var,如下:
(var x, var y) - x.process(y)
上面的例子等同于
(x, y) - x.process(y)
但是我们不能混合使用,下面的两个例子都是错误的:
标准化HTTP Client API
以前我们在程式中使用HttpClient时,通常会引入apache的HttpClient工具包。在JAVA 11中,我们可以使用JDK原生的
HttpClient了。
上面的例子是同步的get请求,还有其他的方法HttpClient也是提供的,例如:
异步get
post提交
并发请求
Get Json
Post Json这些例子这里不做详细介绍了,如有需要请参考官方例子。
功能很强大吧,我们不用再引入其他的HttpClient的jar包了。
总结
对于一线开发者而言,JAVA 11的体验就这么多,如有遗漏,会在以后补充。