Java介绍及JDK 21详细安装教程

news2024/11/19 22:36:54

文章目录

  • 1. 文章简介
  • 2. Java和JDK的介绍与关系
    • 2.1 Java
    • 2.2 JDK
  • 3. Java版本的发展历程
  • 4. Java 21安装步骤


1. 文章简介

本文介绍如何Java、JDK、Java的发展及如何快速安装JDK 21。内容详细充实,旨在帮助您快速了解并使用Java。


2. Java和JDK的介绍与关系

2.1 Java

  • Java是一种广泛使用的编程语言,由Sun Microsystems(现在是Oracle Corporation的一部分)在1995年发布。
  • Java是一种面向对象的语言,它的设计有几个核心目标,包括要能跨平台运行(一次编写,到处运行),具有很好的网络功能,并且是安全的。

2.2 JDK

  • JDK是Java开发工具包,它是一个软件开发环境,用于开发Java应用程序和applets。
  • JDK包括了Java运行时环境(JRE),Java编译器(javac),Java虚拟机(JVM),以及用于开发Java程序的各种工具和库。
  • JDK是为Java开发者设计的,它提供了编写、编译、运行Java程序所需的所有工具。

综上,Java是一种编程语言,而JDK是一套工具集,用于开发Java应用程序。JRE(Java Runtime Environment)是JDK的一个子集,它包括运行Java程序所需的环境,但不包括开发工具。


3. Java版本的发展历程

Java版本号从Java 9开始,Oracle采用了新的命名方式,即直接使用年份和月份来命名,而不再使用1.x的版本号

  • Java 1.0 - 1996年1月发布,Java的第一个正式版本。

  • Java 1.1 - 1997年2月发布,引入了Inner Classes、反射、JavaBeans等特性。

  • Java 1.2 - 1998年12月发布,被称为“Java 2 Platform, Standard Edition”(J2SE),引入了集合框架、Swing UI工具包等。

  • Java 1.3 - 2000年5月发布,增加了新的垃圾回收算法、JIT编译器等。

  • Java 1.4 - 2002年2月发布,引入了正则表达式、XML解析等。

  • Java 1.5 - 2004年9月发布,引入了自动装箱/拆箱、泛型、增强的for循环、Annotations等,并且首次引入了Java Development Kit (JDK) 5.0的命名方式。

  • Java 1.6 - 2006年12月发布,JDK 6.0,引入了JDBC 4.0、编译器和运行时性能改进等。

  • Java 1.7 - 2011年7月发布,JDK 7.0,引入了支持新的文件I/O NIO.2、try-with-resources语句、switch语句的字符串支持等。

  • Java 1.8 - 2014年3月发布,JDK 8.0,引入了Lambda表达式、Stream API、新的日期时间API等。

  • Java 9 - 2017年9月发布,JDK 9.0,引入了模块系统(Jigsaw项目)、私有接口方法、改进的JVM等。

  • Java 10 - 2018年3月发布,JDK 10.0,引入了局部变量类型推断(var)、G1的默认垃圾收集器等。

  • Java 11 - 2018年9月发布,JDK 11.0,引入了新的垃圾收集器Epsilon、ZGC、新的字符串处理API等,并且Oracle宣布将每6个月发布一个新的版本,同时提供长期支持(LTS)版本。

  • Java 12 - 2019年3月发布,JDK 12.0,引入了switch表达式、改进的垃圾收集器等。

  • Java 13 - 2019年9月发布,JDK 13.0,引入了文本块、重新实现的旧版socket API等。

  • Java 14 - 2020年3月发布,JDK 14.0,引入了JFR事件流、switch表达式改进等。

  • Java 15 - 2020年9月发布,JDK 15.0,引入了隐藏类、文本块、ZGC改进等。

  • Java 16 - 2021年3月发布,JDK 16.0,引入了模式匹配增强、ZGC性能改进等。

  • Java 17 - 2021年9月发布,JDK 17.0,引入了新的文件系统特性、模式匹配增强、密封类等,并且被宣布为长期支持版本。

  • Java 18 - 2022年3月发布,JDK 18.0,引入了Vector API、模式匹配增强等。

  • Java 19 - 2022年9月发布,JDK 19.0,引入了虚拟线程、JEP 394等。

  • Java 20 - 2023年3月发布,JDK 20.0,引入了模式匹配增强、Foreign Function & Memory API等。

  • Java 21 - 2023年9月发布,JDK 21.0,引入了新的语言和库特性。


4. Java 21安装步骤

  • 打开官网下载网页
    在这里插入图片描述
    可以发现有多个可以选择的JDK版本

  • 下拉网页,选择要下载的JDK版本、对应的操作系统、安装包形式。点击链接进行下载。
    在这里插入图片描述
    我这儿选择安装JDK 21,Windows系统,通过exe安装程序进行安装。

  • 下载好后得到一个exe安装程序,双击运行。
    在这里插入图片描述

  • 点击下一步
    在这里插入图片描述

  • 选择合适的安装路径(建议不要出现中文、空格等)后点击下一步
    在这里插入图片描述

  • 等待安装
    在这里插入图片描述

  • 大约1-2分钟之后JDK安装完成,点击关闭即可。
    在这里插入图片描述

  • 可以打开命令行,输入java -version查看当前的java版本以检查是否安装成功,出现下图类似的情景即成功。
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2166199.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

828华为云征文|华为云Flexus云服务器X实例——部署EduSoho网校系统、二次开发对接华为云视频点播实现CDN加速播放

EduSoho 是一款功能强大的网校系统,能够帮助教育机构快速搭建在线学习平台。本文将详细介绍如何在华为云服务器上安装和部署 EduSoho 网校系统,以及二次开发对接华为云视频点播VOD来实现CDN加速播放。 edusoho本地存储的视频播放存在诸多弊端。一方面&a…

「C++系列」命名空间

【人工智能教程】,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站:【人工智能教程】 文章目录 一、命名空间1. 定义命名空间2. 使用命名空间中的成员3. 命名空间的…

SAP 利润分配-未分配利润的年初余额和年末余额不一致的问题

SAP OB53 本年利润科目的年初余额和年末余额不一致的问题 关于OB53科目的问题 OB53维护的本年利润科目 现象:为何去年年末的本年利润金额和今年年初的本年利润金额不一致。 解释原因: 本年利润科目的这种现象归根结底是“表结法”产生的,换…

QT----Creater14.0,qt5.15无法启动调试,Launching GDB Debugger报红

问题描述 使用QT Creater 14.0 和qt5.15,无法启动调试也没有报错,加载debugger报红 相关文件都有 解决方案 尝试重装QT,更换版本5.15.2,下载到文件夹,shift鼠标右键打开powershell输入 .\qt-online-installer-windows-x64-4.8.0.exe --mirror http://mirrors.ustc.edu.cn…

VMware 虚拟机配置固定 IP

1. VMware 配置 参考:https://blog.csdn.net/jsryin/article/details/123304582 参考:https://zhuanlan.zhihu.com/p/455097916 1.1. 点击编辑 -> 虚拟网络编辑器 1.2. Net 设置 选择VMnet8 进行配置 查看当前虚拟机的网关是192.168.17.2&#x…

HAproxy-7层负载均衡集群根据不同服务请求分配服务器

搭建HAproxy----7层负载均衡集群的补充 https://blog.csdn.net/qq_73990369/article/details/142500451?spm1001.2014.3001.5501 一、再准备两台虚拟机进行测试 192.168.229.15/24 ----php1 192.168.229.16/24 ----php2 1、PHP1 & php2(192.168.229.15/24 ,192…

做网站建设公司为客户着想方面

作为一家专业的网站建设公司,我们始终将客户的需求置于首位,致力于为客户打造独具特色、功能强大的网站,助力他们在激烈的市场竞争中脱颖而出。 专业团队,定制化服务 我们的团队由技术精湛、经验丰富的专业人才组成,能…

【笔记】光的衍射

一、 衍射现象 波遇到障碍物时,绕过障碍物 进入几何阴影区。 光偏离直线传播路径进入几何 阴影区,并形成光强非均匀稳 定分布。 二、菲涅耳原理 1、 惠更斯原理 波面上的每一点均为发 射子波的波源,这些子波的 包络面即新的波阵面 成功…

C++ 二叉树

1. 二叉搜索树 1.1 二叉搜索树概念 二叉搜索树又称二叉排序树,他或者是一棵空树,或者是具有以下性质的二叉树: ①若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 ②若它的右子树不为空,则右子树上所有节…

VIVADO IP核之FIR抽取器多相滤波仿真

VIVADO IP核之FIR抽取器多相滤波仿真(含有与MATLAB仿真数据的对比) 目录 前言 一、滤波器系数生成 二、用MATLAB生成仿真数据 三、VIVADO FIR抽取多相滤波器使用 四、VIVADO FIR抽取多相滤波器仿真 五、VIVADO工程下载 总结 前言 关于FIR低通滤波…

MySQL数据库修改authentication_string字段为显示密码后无法登录

MySQL数据库修改authentication_string字段为显示密码后无法登录 1. 本文创作背景2. 问题3. 原因分析4. 解决方案5. 附录 1. 本文创作背景 本文介绍MySQL数据库修改authentication_string字段为显示密码后无法登录的处理办法。 2. 问题 用户通过navicat修改MySQL的user表roo…

逆概率加权(R和Python案例)

逆概率加权(Inverse Probability Weighting, IPW)是一种统计技术,用于观察性研究中调整混杂变量的影响,以便更准确地估计因果关系。这种方法特别有用于在无法进行随机化实验的情况下,通过给予不同个体不同的权重&#…

[数据库实验七]事务设计

目录 一、实验目的与要求 二、实验内容 三、实验小结 实验中涉及的数据参考:[数据库实验一]数据库和表-CSDN博客 一、实验目的与要求 1.熟悉提交事务 2.回滚事务 3.检查点技术 注:可以用可视化软件来实现 二、实验内容 基于现有数据库设计事务提…

Axure-本地发布,局域网内用户访问

目录 前言内容一. 选择Axure发布路径,进行相应配置二.添加IIS服务配置(不在这里赘述!)三:添加IIS配置,创建网站四.添加安全策略:实践: 前言 最近加入了公司的积分系统,由…

时尚与科技的融合,戴上更轻更悦耳的QCY C30耳夹耳机,随时享受好音乐

不知不觉,蓝牙耳机已经成了我日常必备的小工具了,尤其是这两年新出现的耳夹式耳机,轻松解决了入耳式耳机的舒适性难题,戴上一整天也不会觉得累,而且一款好看的耳机不仅能够提供澎湃的音质,还能成为时尚出街…

理解信息安全中的SOAR

在信息安全领域,SOAR(Security Orchestration, Automation, and Response,安全编排、自动化与响应)是一个现代化的解决方案,旨在通过集成和自动化的方式优化安全操作流程,提升威胁检测、事件响应的速度与效…

雷达原理-绪论-西电魏青

Radar 雷达:radio detection and ranging 无线电探测和测距 无线电:电磁波信号 探测:通过电磁波信号的一个回波特性实现物体探测 测距:利用回波信号(现在技术发展,不单单是测距,还能是物体的各种…

stm32 flash无法擦除

通过bushound调试代码发现,当上位机发送命令到模组后flash将不能擦除,通过 HAL_FLASH_GetError()函数查找原因是FLASH Programming Sequence error(编程顺序错误),解决办法是在解锁后清零标志位…

构建高效房屋租赁系统:Spring Boot应用

1 绪论 1.1 研究背景 中国的科技的不断进步,计算机发展也慢慢的越来越成熟,人们对计算机也是越来越更加的依赖,科研、教育慢慢用于计算机进行管理。从第一台计算机的产生,到现在计算机已经发展到我们无法想象。给我们的生活改变很…

MySQL purge逻辑分析与调测

目录 purge逻辑分析与调测 一、purge线程 1、什么是purge线程? 2、为什么需要purge? 3、purge哪些内容? 4、什么时候purge? 5、purge内存结构 二、purge主要步骤 1、确认可见性 2、获取需要purge的undo记录 …