java丨_不新的新闻丨Java11的简单介绍

原标题:不新的新闻丨Java11的简单介绍

不新的新闻丨Java11简单介绍

a907d6dc23293ee03b7cd67f45c4d683.png

筒子们好!吼吼吼小开这次给大家带来的是第一手(并不)的前沿资讯!

关于伟大的!

Java!

ebfad0118cc357be2d617d5c1d22bc1e.png

美国时间9月25日,Java11正式发布!由于这是据Java 8以后支持的首个长期版本,9和10自然就活到头了…

那么我们来看下从Java 9 - 11都有哪些重要的新特性呢?

1,本地变量类型推断

什么是局部变量类型推断?

varjavastack ="javastack";

System.out.println(javastack);

大家看出来了,变量局部类型推断就是左边的类型直接使用var定义,而不用写具体的类型,编译器能根据右边的表达式自动推断类型,如上面的String。

varjavastack="javastack";

就等于:

String javastack = "javastack";

2,字符串加强

Java 11增加了一系列的字符串处理方法,如以下所示。

// 判断字符串是否为空白

" ".isBlank(); // true

// 去除首尾空格

" Javastack ".strip(); // "Javastack"

//去除尾部空格

" Javastack ".stripTrailing(); // " Javastack"

等等

3,流加强

Stream是Java 8中的新特性,Java 9开始对Stream增加了几个新方法。

2450882f59c7aa0d2d7237706895029e.png

方法

1)增加单个参数构造方法,可为null

Stream.ofNullable(null).count(); // 0

2)增加takeWhile和dropWhile方法

Stream.of(1, 2, 3, 2, 1)

.takeWhile(n -> n < 3)

.collect(Collectors.toList()); // [1, 2]

从开始计算,当n <3时就截止。

Stream.of(1, 2, 3, 2, 1)

.dropWhile(n -> n < 3)

.collect(Collectors.toList()); // [3, 2, 1]

这个和上面的相反,一旦n <3不成立就开始计算。

除了上述以外,Java9-11还有可选加强,InputStream加强,HTTP客户端API等等新特性,在此不再赘述。

这个版本是Java有史以来最大的一次瘦身, 移除了Demos and Samples,移除了不常用的GC搭配,移除了jhat和javah,移除了JavaEE和JavaFX(体积不小,还自带浏览器内核),移除了VisualVM和MissionControl(都是不小的),移除了Derby数据库。 当然这些都是因为放到现代已经没什么用了,有更好的替代品,或独立出去了(同时也为了更快的更新迭代)。瘦身后的安装包体积较JDK9/10大幅缩减, 甚至比JDK8还小了。

当然,关于Java11,值得一提的东西太多了,下面是一位dalao给出的综合~~~~

主要特性

1

81:Nest-Based Access Control(基于嵌套的访问控制)

309:Dynamic Class-File Constants(动态类文件常量)

315: Improve Aarch64 Intrinsics(改进 Aarch64 内部函数)

318:Epsilon: A No-Op Garbage Collector(Epsilon:No-Op 垃圾收集器)

320:Remove the Java EE and CORBA Modules(删除 Java EE 和 CORBA 模块)

321:HTTP Client (Standard)(HTTP 客户端)

323:Local-Variable Syntax for Lambda Parameters(Lambda 参数的变量语法)

324:Key Agreement with Curve25519 and Curve448(采用 Curve25519 和 Curve448 算法实现的密钥协议)

2

c9ab973a3e342624539ad5ce09f7180e.png

327:Unicode 10

328:Flight Recorder(飞行记录器)

329:ChaCha20 and Poly1305 Cryptographic Algorithms(ChaCha20 和 Poly1305 加密算法)

330:Launch Single-File Source-Code Programs(启动单文件源代码程序)

331:Low-Overhead Heap Profiling(低开销堆分配采样方法)

332: Transport Layer Security (TLS) 1.3(TLS 1.3 的传输层安全性)

333:ZGC: A Scalable Low-Latency Garbage Collector(Experimental)(ZGC:可扩展的低延迟垃圾收集器,在实验阶段)

335:Deprecate the Nashorn Java Engine(弃用 Rhino Java 引擎)

336:Deprecate the Pack200 Tools and API(弃用 Pack200 工具和 API)

3

328:Flight Recorder(飞行记录器)

329:ChaCha20 and Poly1305 Cryptographic Algorithms(ChaCha20 和 Poly1305 加密算法)

330:Launch Single-File Source-Code Programs(启动单文件源代码程序)

331:Low-Overhead Heap Profiling(低开销堆分配采样方法)

332: Transport Layer Security (TLS) 1.3(TLS 1.3 的传输层安全性)

333:ZGC: A Scalable Low-Latency Garbage Collector(Experimental)(ZGC:可扩展的低延迟垃圾收集器,在实验阶段)

335:Deprecate the Nashorn Java Engine(弃用 Rhino Java 引擎)

336:Deprecate the Pack200 Tools and API(弃用 Pack200 工具和 API)

17f1b4aac3b85b2d90ee478a18be4a94.png

写在最后的最后:现在许多人还在使用Java 8或者7,不过8在2019年初就会结束免费更新。现在11是长期支持版本,正是学习和上手11的好时机,希望这篇文章能对你有所启发。

SE

文编 /小开

美编 / rich

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值