Java的现状

2020 年是 Java 诞生的第 25 个年头。Oracle表示,目前java仍然流行编程语言,广泛使用在企业中。目前全世界有超过69%的专职开发人员使用Java,全世界有510亿台活动Java虚拟机(JVM)在部署中,目前Java主要被用于分析,数据管理,大数据,DevOps,移动,持续开发工具和聊天机器人等服务。

历史版本的主要新特性

在过去的这些年中,Java 在过去增强功能的推动下为用户提供了超过二十年的创新。例如:
JDK 5:enum、泛型、自动装箱与拆箱、可变参数、增强循环等
JDK 6:支持脚本语言、JDBC4.0API
JDK 7:支持try-with-resources、switch语句块增加String支持、NIO2.0包
JDK 8:lambda表达式、Stream API、新的日期时间的API、方法引用、构造器引用
JDK 9:模块化系统、jshell
JDK 10:局部变量的类型推断
JDK 11:ZGC的引入、Epsilon GC
JDK 12:switch表达式、Shenandoah GC、增强G1
JDK 13:switch表达式引入yield、文本块
JDK 14:instanceof模式识别、Records、弃用Parallel Scavenge+Serial GC组合、删除CMS GC

近期版本发布及维护时间

OpenJDK发版路线图:

image-20201020223249571

Oracle JDK支持路线图:

image-20201020223314507

新特性概览

这次发布的主要功能有:Java 15为用户提供了14项主要的增强/更改,包括一个孵化器模块,三个预览功能,两个不推荐使用的功能以及两个删除功能。http://openjdk.java.net/projects/jdk/15/

image-20201020223417210

对应中文特性:(JEP:JDK Enhancement Proposals,JDK 增强建议,也就是 JDK 的特性新增和改进提案。)

JEP 339:EdDSA 数字签名算法
JEP 360:密封类(预览)
JEP 371:隐藏类
JEP 372:移除 Nashorn JavaScript 引擎
JEP 373:重新实现 Legacy DatagramSocket API
JEP 374:禁用偏向锁定
JEP 375:instanceof 模式匹配(第二次预览)
JEP 377:ZGC:一个可扩展的低延迟垃圾收集器
JEP 378:文本块
JEP 379:Shenandoah:低暂停时间垃圾收集器
JEP 381:移除 Solaris 和 SPARC 端口
JEP 383:外部存储器访问 API(第二次孵化版)
JEP 384:Records(第二次预览)
JEP 385:废弃 RMI 激活机制

总结:
JDK15整体来看新特性方面并不算很亮眼,它主要是对之前版本预览特性的功能做了确定,如文本块、ZGC等,这么一来我们就可以放心大胆的使用了。
你发任你发,我用Java8。

支持Java15的开发工具

目前,官方博文说支持Java15的工具,就下面这三款:

  • JetBrains IDEA
  • Apache NetBeans
  • Eclipse Marketplace

运行JDK15需要IDEA 2020.2才能支持。(JDK14要求IDEA 2020.1)

JDK15下载路径:https://www.oracle.com/java/technologies/javase-jdk15-downloads.html

image-20201020223802905

IDEA 2020.02版本下载地址:https://www.jetbrains.com/idea/download/#section=windows

image-20201020223829481
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐