具体升级过程和公司应用部署情况有关,内网有总结文章,在这里就不赘述。这里简单记录一下升级的收益。
性能提高
GC 优化
G1在JDK11中已经成熟,替换CMS成为默认GC,并且CMS会在Java14中正式废弃。GC停顿时间减少
内存降低
String 类型底层实现由 char 类型(2个字符) 改成了 byte 类型(1个字符)
语法升级
附几个我很喜欢的 JDK 语法:
- List.of:jdk9
- List.copyOf:jdk10
- String.strip():jdk11
```java
List
list = List.of(“Java11 “, “ pandora boot “, “ test “);
List.copyOf(list).forEach((var s) -> log.info((“Hello, “ + s.strip()))); ```