JDK版本的选择

发布时间:2023-05-06 09:37:28

  对于java新手来说,选择jdk版本也是一件令人头晕的事情。今天,小拿将告诉你。内容包括

  1.jdk从1.5到1.11选择哪一个最好?

  2.jdk和jre的区别1、选择jdk版本

  jdk是java开发工具包。除了操作和编译相关工具外,最重要的是包装了许多方法(function/method/api)。比如写输出“比如写输出”Hello world直接调用System的程序.out.println方法很好。

  但是在安装jdk的时候,有人推荐1.6(也叫6.0),也有人说用1.7和1.8。太混乱了,不如先看看官网。

  java下载官网直达:https://www.oracle.com/technetwork/java/javase/downloads/index.html

JDK版本的选择_新版本

1.1 问题1:为什么JDK经常从1.7升级到1.8升级?、1.9、1.0、1.11?

  新手可以理解这个问题。java和C++都是高级语言,但两者最大的区别是C++底层直接调用操作系统运行硬件;Java在操作系统上增加了一层JVM(Java虚拟机),即操作硬件上的一层,因此C++通常性能更好。

JDK版本的选择_新版本_02

  早期的大型客户端游戏、网络和大数据算法以及硬件驱动程序都是由C++(或C)语言开发的。但没有人是完美的,语言也是如此,否则就不会像java、python、谷歌等各种语言。与操作系统的强锁定使C++在不同的操作系统或硬件平台上运行时改进和调整程序。

  java声称每个平台运行无障碍,因为底层有一套虚拟机。现在智能电器和家居基本都是基于java语言开发的程序。

  但java说,我也使用了如此广泛的语言,我怎么能总是戴性能不如C++的帽子呢?因此,随着技术的改进和数据结构算法的应用,通过不断的小版本(如1.8).1,1.8.2)和大版本(1.7)、1.8等)的发布,jvm的性能一直在升级,在普通应用场景下,与c++的性能关系不大。

  此外,语法一直僵化的java语言也吸收了其他语言的本质,如1.8引入Lambda表达式,1.9引入var变量等。(虽然大多数java程序员不买,但他们总是使用原来僵化的语法~~)1.2 问题二:选择哪个?

  先给答案,选择1.8或1.9,1.8优先。

  从Sun公司(即太阳)被Oracle收购开始,Java原本是一个开源项目,由社区维护。被收购后,它具有商业和属性,Oracle公司慢慢开始向Java收费,尽管现在Jdk se标准版不收费,但高级版已向使用企业要钱。

  有了这个计划,java语言走得更快。例如,10.0和11.0的发布速度非常快。一些新功能需要市场反馈是否合理。此外,java开发依赖于许多框架(如spring)。如果这些框架不完全支持新版本,它们可能无法运行。因此,建议新版本(10.0和11.0)不要在实际业务开发中使用,除非你只想从语言层面体验新功能。

  1.5和1.6都太老了,就连1.8、oracle也发出了2019年1月停止更新的通知,我们更不用说使用这些古董了。

  1.7、1.8、1.9是成熟版本,原则上可以选择。公司的商业项目JDK一般不容易升级,1.9使用较少。考虑到上述配套框架的升级速度,1.9版本的第二个推荐位置。1.8和1.7被广泛使用,因此自然选择更新更先进的版本。因此,最推荐使用1.8版本。2、jdk和jre的区别

  有些学生在配置系统时经常会遇到jdk和jre的问题,但他们无法理解它们之间的区别。在这里,作为一种常识,早期不知道没有问题。

  其实可以从字面上区分两个字,jdk(java development kit)是java的开发工具包,jre (java runtime environment) 是java程序的运行环境。

  本地开发也可以运行,但当作为网站或项目运行时,代码是war包或jar包,与开发相关的工具和包是无用的。

  也就是说,jre是jdk的子集。

  下图显示了官方1.8的文件描述:https://docs.oracle.com/javase/8/docs/

JDK版本的选择_oracle_03

  一方面,使用jre而不是jdk是为了减少硬盘空间的使用,另一方面,也有一定的安全考虑,以防止jdk中的一些执行命令被恶意篡改。当然,现在大多数公司不再区分jdk和jre,直接在服务器上运行jdk。

上一篇 Go 编程实例【括号生成】
下一篇 LeetCode面试题:复原 IP 地址

文章素材均来源于网络,如有侵权,请联系管理员删除。

标签: Java教程Java基础Java编程技巧面试题Java面试题