此前,Java 之父高斯林曾经发文表示可以尝试升级到 JDK17,因为JDK17是一个比 Java8 更好的版本,发文如下:

简单翻译下就是:

“对于那些仍然坚持使用 JDK8 的人,有一个包含所有最新更新和 CVE 防御的新 Corretto 版本。但是,请尽快离开 JDK8。JDK17 LTS 在各个方面都是一个巨大的飞跃。”

所以前几天大家都看到这么一条消息“Java8?Java之父都不用”!

目前Java的最新版本是Java18,于2022年3月份发布,Java19也即将在今年9月份发布,而下一个长期支持版本Java21预计将在2023年9月份发布。大家在生产实施过程中肯定需要使用稳定的Java版本,那选择必然就是LTS,也就是长期支持版本了!目前Java主要有如下几个长期支持版本:

  1. Java 8 是2014年发布

  2. Java 11是2018年发布

  3. Java 17是2021年发布

但是国内很多开发者其实还都停留在Java8,为什么那么多人还在坚持用Java8呢?

作为长期支持版本的Java11在发布之后,大部分人没有选择升级,有人说,很多人坚持使用Java8的一个原因在于,Java8是作为拥有旧的Java许可证的最后一个版本,而且后续升级的很多版本拥有的新功能大部分都用不上,更有甚者,如果说对于Java8中的 lambda不需要的话,有一些程序员甚至可以坚持使用Java6!

其实Java8作为Oracle更改Java许可证之前的最后一个免费版本应该是比较重要的原因,毕竟谁都不想花钱。

2018年,Oracle改变了Java许可证的方式,简单来说,当时大家用的长期支持版本是Java8,下一个长期支持版本是Java11,但是如果你是商业使用,将Java8升级到Java11的话,那么你就需要付费!

这个时候有人就说了,那用OpenJDK啊,的确,OpenJDK是一种替代,是官方Oracle JDK的开源版本,但是存在一些问题就是OpenJDK仅对最新版本进行更改,这导致一些企业组织不愿使用OpenJDK!

对于商业组织来说,他们更加喜欢稳定,在Java8及之前,Java更新都是比较稳定,但是从Java9开始,基本就是每半年一个版本,这个更新速度,导致很多商业组织没法跟随,因为迁移升级是一件麻烦的事情!

不过从目前的一些消息来看,大家都觉得Java8 似乎该退场了,很多人看好的则是 Java17 这个长期支持版本,比如Java之父,高斯林就公开建议赶紧升级到Java17!

那为什么是Java17呢?

首先,Java17是继Java8和Java11之后的最新的一个长期支持版本,意味着后续Oracle将对Java17进行长期的支持(8年)!!

我们看Java8和Java11,从名字上感觉过了很长,时间上中间只过了三年,非LTS版本只有六个月的支持,作为新一个LTS的Java11,大家似乎并没有那么快的适应要去升级!

7年间,从Java8到Java17中更新升级了许多功能,API的规模进一步增长,此前更新的所有特性,Java17这个全新的长期支持版本,都将适用,而使用Java8的自然无法使用,所以是不是该换了?

版本 年份 新语言特性 类与接口的数量
1 1996 语言本身 211
1.1 1997 内部类 477
1.2 1998 strictfp修饰符 1524
1.3 2000 1840
1.4 2002 断言 2723
5 2004 泛型类、“for each”循环、可变参数、自动装箱、元数据、枚举、静态导入 3279
6 2006 3793
7 2011 基于字符串的Switch语句、菱形运算符、二进制字面量、异常处理增强 4024
8 2014 Lambda表达式、包含默认方法的接口、流和日期/时间库 4240
9 2017 模块、其他的语言和类库增强 6005
11 2018 局部变量类型推导(var)、HTTP客户端、移除Java FX、JNLP、Java EE重叠模块和CORBA 4410
17 2021 Switch表达式、文本块、instanceof模式匹配、记录、密封类 4859

从Java17开始,LTS版本将由每三年发布一次的频率更改为每两年一个LTS版本的频率,这也促使大家需要尽快转向新的LTS版本!

除此之外,在JDK17中还有一项重大改变,那就是免费了!

时代在变化,科技在进步,总是要向前看的,有人说,Java17慢慢取代Java8,只是时间问题,你觉得呢?

RECOMMEND

重点来了

学习Java看什么书?相信这本《Java核心技术》你一定不会陌生!伴随着Java的成长,《Java核心技术》也从第1版到第11版一路走来,得到了广大Java程序设计人员的青睐,成为一本畅销不衰的Java经典图书。如今,针对Java 17的《Java核心技术》第12版中文版终于上市。这一版涵盖了Java 17的最新特性,相应调整了部分内容结构,同时延续之前版本的优良传统,利用清晰明了的示例加以解释,并提供了全部示例代码,以便读者学习和灵活应用。它将续写从前的辉煌,使人们能及时跟上Java前进的步伐。

《Java核心技术 卷I:开发基础(原书第12版)

(点击图片查看详情)

作者:[美] 凯·S.霍斯特曼(Cay S.Horstmann)

译者:林琪,苏钰涵

书号:978-7-111-70641-0

定价:149.00元

根据 Java 17 全面升级,

全球畅销20余年历久弥新,

数百万开发者共同的选择,

50位KOL联名推荐

推荐理由:Core Java 第12版经过全面修订,以涵盖Java 17的新特性。新版延续之前版本的优良传统,用数百个实际的工程案例,全面系统地讲解了Java语言的核心概念、语法、 重要特性、 开发方法。本书不仅让你深入了解设计和实现 Java 应用涉及的所有基础知识和 Java 特性,还会帮助你掌握开发 Java 程序所需的全部基本技能。相信在学习Java的道路上有了本书的辅助,你的学习一定可以做到事半功倍。

50位专家联袂推荐

扫码关注【华章计算机】视频号

每天来听华章哥讲书

更多精彩回顾

书讯 |6月书讯(上)| 浅夏读新书,与世间万物一起成长

书讯 |6月书讯(下)| 人机物三元融合,开启新世界大门

书单 | 知乎高赞:有哪些你看了以后大呼过瘾的数据分析书?

干货 |用户画像的建立方法和流程,一篇教会你

收藏 | 盘点知识图谱在 5 大智能领域的应用

上新 | Learning Go:你的第一本Go语言学习指南

干货 |诞生50年的C语言为何稳如泰山?

资讯 | 2013年图灵奖得主 Leslie Lamport 专访:程序员需要更多的数学知识

赠书 |【第107期】量子世界如何颠覆传统直觉?

干货 |一文带你了解机器翻译

点击阅读全文购买

再见了Java8,Java17:我要取代你相关推荐

  1. Java8 ~ Java17 新特性

    Java 8 主要特性: Lambda, 函数式接口,方法引用,Optional, Stream的引入 接口默认方法,重复注解,日期API, Base64支持 Lambda和函数式接口 函数式接口就是 ...

  2. 尾调用优化 java_基于Java8函数式编程求一个List的全部子集|尾调用优化解决递归性能问题...

    目录 基于函数式编程求一个List的全部子集 代码来自<Java8 in Action>,思路和其他递归解决方法一致,但不同的地方在concat方法 public static List& ...

  3. 7月书讯 | 12本新书如期而至!

    7月,12本科技新书如期而至! 刘润推荐而不完全认同的<冲击波:对美国互联网巨头的文化思考>,奇安信官方出品的<红蓝攻防>,京东集团副总裁郑宇首部中文著作<城市治理一网统 ...

  4. 这几年爆火的智能物联网(AIoT),到底前景如何?

    作者:郭斌 刘思聪 於志文 来源:大数据DT(ID:hzdashuju) 当前物联网.大数据和人工智能技术的快速发展与加速融合,催生出智能物联网(Artificial Intelligence of ...

  5. Cay S.Horstmann:从Java新特性看Java的未来

    6月11日,由国内Java技术传播领军机构机械工业出版社华章分社与培生教育集团联合发起的[Java核心技术大会2022]盛大召开!8个专场.24个主题演讲,从6月11日起至6月18日连续8天在线直播, ...

  6. 【Java核心技术大会 PPT分享】陈阳:深入理解 Java 虚拟机编译原理

    导读:深入理解 Java 虚拟机编译原理 直播分享PPT Java核心技术大会2022 分享主题:深入理解 Java 虚拟机编译原理 分享嘉宾:陈阳,京东科技架构师,曾就职于美团.去哪网,负责自研消息 ...

  7. 宇宙第一 IDE 霸主,换人了?

    导读:为什么 Visual Studio 能够登顶? 作者 / 来源:纯洁的微笑(ID:keeppuresmile) 01 第一 IDE 宇宙第一 IDE 是谁? 这就像当初讨论谁是编程语言的扛把子一 ...

  8. 分布式数据库:如何正确选择分片键?

    过去十年见证了分布式数据库的崛起不仅通过本地集群来实现负载均衡,并提供高可用性,还具有数据中心内的机架感知等属性.专为云而设计的分布式数据库,可以跨越可用性区域,通过编排技术,支持公有云.私有云.混合 ...

  9. 【Java核心技术大会 PPT分享】林子熠:GraalVM的静态编译和静态分析技术

    导读:GraalVM的静态编译和静态分析技术 直播分享PPT Java核心技术大会2022 分享主题:GraalVM的静态编译和静态分析技术 分享嘉宾:林子熠,阿里巴巴集团技术专家,中国计算机学会系统 ...

最新文章

  1. java se 与j2se_关于java:J2EE和J2SE项目之间的区别
  2. iOS边练边学--CALayer,非根层隐式动画,钟表练习
  3. 海思Hi3559A平台移植 opencv4.0.0
  4. Linux系统环境查看已经登录用户信息及管理
  5. iOS GCD, 同步,异步,串行队列,并行队列,dispatch_group
  6. Pytorch快速入门笔记
  7. P4213-[模板]杜教筛(Sum)
  8. java内存加载dll_jacob调用dll控件,是否要执行内存释放,具体方法怎么写
  9. MQTT工作笔记0006---CONNECT控制报文3
  10. 华为证实 P40 将没有 Google 服务;李世石退役;Python 3.8.1 发布 | 极客头条
  11. [转载] 中国象棋软件-引擎实现(二)棋局表示
  12. 调整oracle数据库编码
  13. 2017CCPC哈尔滨 B:K-th Number(二分)
  14. UCloud可支撑单可用区320,000服务器的数据中心网络系统设计
  15. [网络应用]Foobar2000界面入门:认识Foobar的UI系统,熟悉三种主流界面插件
  16. JSON.stringify 语法讲解
  17. hacking 麦步手表之(3)制作一个英文表盘xzy-reborn
  18. python字符串的比较
  19. 从贝叶斯滤波到无迹卡尔曼滤波
  20. 江礼坤:详解资源合作推广

热门文章

  1. C++ : Boost : Rational 有理数类
  2. 安卓,类QQ评论,界面编写
  3. 【机器学习】机器学习基石-林轩田-2-Learning to Answer Yes_No
  4. java字符串转数组的方法,写给正在求职的Java开发
  5. python收集参数_第5.2节 Python的函数参数收集
  6. 快速排序(Quicksort)详解
  7. 武汉理工学计算机能保研吗,欢迎访问武汉理工大学计算机科学与技术学院
  8. np.corrcoef返回值含有nan
  9. 第一篇 厚黑学 代序一 被忽略的大师
  10. 数字信号处理第五次试验:FIR数字滤波器设计与软件实现