【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk

前情回顾:

  • 【2023,学点儿新Java-01】从查看本机 jdk版本 开始 | Java基础全程脉络图、Java工程师全程技术路线、Java职业晋升路线图

  • 【2023,学点儿新Java-02】计算机硬件与软件 | CPU、内存、硬盘概览 | 科学使用键盘——“指法” | 软件——计算机的灵魂 | 人机交互方式

  • 【2023,学点儿新Java-03】DOS简介 | 如何进入DOS命令窗口 | 详解:常用DOS命令总结与练习 | 计算机编程语言史 | 机器语言、汇编语言、高级语言 | 计算机编程语言排行榜

  • 【2023,学点儿新Java-04】Java概述: Java简史、起步阶段和发展阶段、Java之父、Java各个版本 | 什么是Java长期支持版本?| SUN公司简介 | Java技术体系平台介绍

 
人一定要有远景,
不能实现也可以,
但不管能不能实现,
它一定会带你走很远的距离。

 

作者主页: 追光者♂

        

个人简介:
 
[1] 计算机专业硕士研究生
 
[2] 2022年度博客之星人工智能领域TOP4
 
[3] 阿里云社区特邀专家博主
 
[4] CSDN-人工智能领域优质创作者
 
[5] 预期2023年10月份 · 准CSDN博客专家  
 

  • 无限进步,一起追光!!!

        

感谢大家 点赞  收藏⭐   留言!!!

   

本篇,从0开始,带你搭建Java开发环境。首先介绍了什么是JDK、JRE、JVM,以及它们之间的区别,然后附带介绍了什么是Java API,这将有利于各位以后的理解。随后结合实际数据说明了为何要选择jdk17,最后较为详细地说明了如何在 Oracle官网下载 jdk17以及如何在官网找到各个版本的 jdk。至于配置,将会在下一篇文章中说明~

本文目录

  • 一、搭建Java开发环境
    • 1.1 JDK、JRE
      • 1.1.1 JDK
      • 1.1.2 JRE
      • 1.1.3 附:JVM
      • 1.1.4 附:Java API
      • 1.1.5 小结
    • 1.2 JDK的选择
      • 1.2.1 究竟该选择哪个版本的Java呢?
      • 1.2.2 相关数据佐证
    • 1.3 安装 Java17——jdk的下载(步骤)
      • 1.3.1 进入`Oracle官网`
      • 1.3.2 选择`Java`
      • 1.3.3 找到 Java17(jdk17)
      • 1.3.4 点击下载
      • 1.3.5 附:如何找到 各个版本的jdk

一、搭建Java开发环境

1.1 JDK、JRE

1.1.1 JDK

 
JDK (Java Development Kit):是Java程序开发工具包,包含JRE 和开发人员使用的工具。

JDK 是一种用于创建Java应用程序的软件开发环境JDK 包含了Java编译器、Java虚拟机 以及其他Java开发所必需的工具和类库,让开发者可以在计算机上面编写、编译并运行Java程序。

除了基本的Java库以外,JDK还包括一些工具,例如JavaDoc和Java Debugger,帮助开发者更容易地分析和调试Java程序。

虽然JDK与JRE很相似,但是它们还是有一些不同,JDK提供了更多的工具 以便开发者开发Java应用程序,而JRE 只是提供了Java运行环境以便Java程序能够正确运行

1.1.2 JRE

JRE (Java Runtime Environment) :是Java程序的运行时环境,包含JVM 和运行时所需要的核心类库

JRE 是一种 用于运行Java应用程序的软件环境。它包括了Java虚拟机 (JVM) 和 Java类库等部分,可以将 Java程序编译后的字节码文件 解析并转换为运行的程序。

也就是说,JRE为Java程序 提供了一个可执行环境和平台让Java应用程序可以在用户计算机上运行与JDK不同,JRE只提供了Java运行的环境,而没有Java开发所需的编译器及工具包等

1.1.3 附:JVM

JVM (Java Virtual Machine) 是Java虚拟机,是Java程序的运行环境,它是一种抽象概念。

JVM 可以在不同的操作系统 和 硬件平台上运行Java应用程序,它能够将Java源程序编译后的字节码解释执行并且能够自动管理内存、进行垃圾回收等操作充当着Java程序和操作系统之间的中间层

JVM的优点是具有跨平台的能力,开发人员只需要在一个平台上编写一次Java程序,就可以在不同的操作系统和硬件平台上运行这极大地方便了Java程序的开发和移植

JVM还提供非常丰富的Java类库,包括网络、I/O、数据库、图形界面等方面的API,可供使用者灵活使用。

下图是Java官方提供的Java 8.0 Platform (平台),便于我们理解:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第1张图片
 

1.1.4 附:Java API

Java API(Application Programming Interface)是Java提供的一组可重用的软件组件、类和接口集合,用于程序员开发Java应用程序。

这个API库包含了常用的功能库、工具库和各种技术的实现,包括网络、IO、多线程、SQL数据库、图形界面、安全、XML等等。

Java API库 被设计为 易于使用的模块化体系结构,并且每个模块都有特定的目标,开发人员 可以根据自己需求 选取和使用API中的各种类、接口和方法等组件,进而开发出高效、稳定和功能丰富的Java应用程序。

Java API库中的组件 也是经过Java开发者广泛测试和验证的,开发人员可以在 不必考虑其实现细节的情况下,直接调用这些API,从而提高了开发效率,减少了代码的复杂度。

简言之,Java API,即现成的代码,类库,可以直接用!

1.1.5 小结

  • JDK = JRE + 开发工具集(例如Javac编译工具等

  • JRE = JVM + Java SE标准类库

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第2张图片
 

那么我们安装什么呢?

自然是————JDK!JDK既包含JRE(Java运行时环境),也包含Java开发所必需的工具和类库。

 

1.2 JDK的选择

1.2.1 究竟该选择哪个版本的Java呢?

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第3张图片

根据上一篇中 介绍的Java发行版本,

目前来讲,JDK的长期支持版本有:Java5.0、Java8.0、Java11.0、Java17.0。

Java5.0 相对来说“有点老了”,这里不考虑。

对于另外三个版本,可以根据企业中使用的占比来考虑,用比较生动的图来形容的话,就好像下边的图:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第4张图片

(⊙o⊙)…好像,Java 8 是比较牛的!自Java 8版本发布以来,其后的每次更新,都会有小伙伴高呼:Java8 YYDS!~~

此外,也有来自论坛的声音:“你发任你发,我用Java 8!

1.2.2 相关数据佐证

来看一些数据,也是近两年之内的,还是比较新的:

JRebel 于2022年4月前后发布了《2022 年Java生态系统状况报告》,报告中提到使用Java11 的占比最多,Java 8 紧随其后,如下图。而此前2020年的报告显示,Java8占比达到了84.48%

可以说,Java 8 和 Java11 “旗鼓相当”~ 而 Java17.0 虽然也是长期支持版本,但由于发布时间不是很长,因而统计中 占比不是很高。
【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第5张图片

相关分析:

G1是最受欢迎的GC算法。Java 11及更高版本的G1收集器是默认的GC,而Java 8中并不是。出于对G1的喜爱,很多开发者才会选择抛弃Java 8。

(补充说明:)

GC算法(Garbage Collection 算法)是一种自动内存管理技术,在运行时自动对程序运行时不再使用的内存进行回收,从而避免内存泄漏和垃圾堆积的问题。
G1(Garbage-First)算法是一种分代垃圾回收算法它将内存分成多个大小相等的区域(Region),并跟踪 每个区域内存垃圾的使用情况。在每次GC时,G1将选择垃圾最多的区域进行回收。这种算法的优势是可以在一定程度上减少GC的停顿时间,并使得内存的使用更加高效

 
 

再来看一组数据:

某美国软件开发商在对近千名专业的Java开发者调研后,发布的《2022年Java开发者生产力报告》称:八年前发布的Java 8依然是Java中应用最广泛的版本,占比 37%,其次是 Java 11,占比29%

安装Java8? 先别着急!

再来看看Java之父高斯林怎么说:

他说:(大致意思是快卸载掉Java8,安装新版的Java
——Java17在各个维度上都有很大的飞跃
…)

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第6张图片

 
 
考虑到Spring框架相关:

在Java 17正式发布之前,Java开发框架Spring 率先在官博宣布,Spring Framework 6 和 Spring Boot 3 计划在2022年第四季度实现总体可用性的高端基线:

  • Java 17+ (来自 Spring Framework 5.3.x 线中的 Java 8-17)

  • Jakarta EE 9+(来自Spring框架5.3.x 线中的 Java EE 7-8)

附:Spring 官方说明 https://spring.io/blog/2022/01/20/spring-boot-3-0-0-m1-is-now-available

Spring官方说 要把基准线从Java8 调整为 Java17:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第7张图片

这意味着:springboot3.0 是需要 用java17和spring6.0为基础建设。如果从企业选型最新springboot3.0 作为架构来说,它搭配jdk17肯定是标配了。

也就是说,Java17的占比,一定会越来越高!这是大势所趋!

综上所述,这里选择安装Java17

 

1.3 安装 Java17——jdk的下载(步骤)

1.3.1 进入Oracle官网

下载网址(Oracle公司官网):https://www.oracle.com/

进入官网后,下拉到界面最底下,点击 Developers(点击后 可能需要稍等几秒钟~)

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第8张图片

1.3.2 选择Java

进入后,稍微下拉界面,

然后 在Developers页面 中间的技术分类部分,选择Java,单击进入,如图所示:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第9张图片

1.3.3 找到 Java17(jdk17)

 
注意:此处 展示的是最新Java版本,例如Java20(在本篇Blog发布时,是此处是Java20)。

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第10张图片
 

为了找到Java17,只需要下拉至如下区域:点击 Download Oracle JDK,(亦或是 点击 https://www.oracle.com/java/technologies/downloads/ 也可以~)

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第11张图片

从而进入下述界面:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第12张图片

1.3.4 点击下载

注:点击此处 也可以进入https://www.oracle.com/java/technologies/downloads/#jdk17-windows

分别按照 如下数字标号处 依次点击,下载即可:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第13张图片

点击下载:
【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第14张图片

稍等 即可下载好jdk17 啦~~

1.3.5 附:如何找到 各个版本的jdk

也是在此界面处:https://www.oracle.com/java/technologies/downloads/#jdk17-windows

点击 Java archive,此处我也附上链接~~

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第15张图片
 

从而进入 如下新的界面:

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第16张图片
 

下拉,即可看到 各个版本的jdk啦~~ (包括最新的版本~)

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第17张图片

【2023,学点儿新Java-05】搭建Java开发环境:什么是JDK、JRE、JVM、Java API?|G1垃圾回收算法 |应该选择哪个版本的jdk?| 安装jdk17 |如何找到各个版本jdk_第18张图片

从而即可根据需求点击下载咯~~

 

 

 

注:关于 jdk的相关配置 (也很简单),下一篇会记录。

 


 

热门专栏推荐

  • Python&AI专栏:【Python从入门到人工智能】
  • 前端专栏:【前端之梦~代码之美(H5+CSS3+JS.】
  • 文献精读&项目专栏:【小小的项目 (实战+案例)】
  • C语言/C++专栏:【C语言、C++ 百宝书】(实例+解析)
  • 问题解决专栏:【工具、技巧、解决办法】
  • 加入Community 一起追光:追光者♂社区

 

持续创作优质好文ing…✍✍✍

 

记得一键三连哦!!!

 

求关注!求点赞!求个收藏啦!

在这里插入图片描述

你可能感兴趣的:(Java教程,JDK,JRE,jdk17下载,JVM,Java,API,java入门)