Java 10和Java 11新特性

Java 10简介:

1)2018年3月21日,Oracle官方宣布Java 10正式发布。

2)需要注意的是Java 9和Java 10都不是LTS(Long-Term-Support)版本。和过去的Java大版本升级不同,这两个只有半年左右的开发和维护期。而未来的Java 11,也就是18.9 LTS,才是Java 8之后第一个LTS版本。

3)JDK 10一共定义了109个新特性,其中包含12个JEP(对程序员来讲,真正的新特性其实就一个),还有一些新API和JVM规范以及JAVA语言规范上的改动。

局部变量类型推断:

1)产生背景:

        开发者经常抱怨Java中引用代码的程度,局部变量的显示类型声明,常被认为是不必须的,给一个好听的名字可以清楚表达出下面应该怎样继续。

2)好处:

        减少了啰嗦和形式的代码,避免了信息荣誉,而且对其了变量名,更容易阅读。

3)举例如下:

 场景一:类实例化时

        作为Java开发者,在声明一个变量时,我们总是习惯了敲打两次变量类型,第一次用于声明变量类型,第二次用于构造器。

LinkedHashSet<Integer> set=new LinkedHashSet<>();

场景二:返回值类型含复杂泛型结构

        变量的声明类型书写复杂且较长,尤其是加上泛型的使用。

Iterator<Map.Entry<Integer,Student>> iterator=set.iterator();

场景三:

        我们经常声明一种变量,它只会被使用一次,而且是用在下一行代码中,比如:

URL url=new URL("http://www.baidu.com");
URLConnection connection=url.openConnection();
Reader reader=new BufferedReader(new InputStreamReader(connection.getInputStream()));

        尽管IDE可以帮我们自动完成这些代码,但当变量总是跳来跳去的时候,可读性还是会受到影响,因为变量类型的名称由各种不同长度的字符组成。而且,有时候开发人员会尽力避免声明中间的变量,因为太多的类型声明只会分散注意力,不会带来额外的好处。

适用于以下情况:

//1.局部变量的初始化
var list=new ArrayList<>();
//2.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值