大小:164.45MB类别:编程工具
官方版安全无插件
Java是一种功能强大且简单易用的编程语言,使用Java开发的软件越来越多。想要运行Java编写的程序,需要在电脑中安装Java运行环境。这里带来的是java se development kit 21,一般简称为jdk21、java 21,是现代开发平台,也是企业应用的理想编程语言,有助于企业降低成本、缩短开发时间、推动创新以及改善应用服务。目前软件已经提供了数以千计的性能、稳定性和安全性改进,包括平台增强功能,可以帮助开发人员提高工作效率并推动整个组织的创新和增长。
与上一版本相比,java se development kit 21新增了多个新特性,比如引入的序列集合,可以为Java开发者提供一种新的、有序的、线程安全的集合实现。增加了三个主要的接口,包括SequencedCollection,SequencedSet和SequencedMap<K,V>;增加了虚拟线程,可以创建大量的线程,甚至达到百万级别,简化并发模式模型,简化代码,减少阻塞问题;还增加了字符串模板,提供了一种更简洁、更直观的方式来动态字符串,通过使用占位符${},可以将变量的值直接嵌入到字符串中,而不需要手动处理等等,这些特性不仅增强了Java语言的功能性,还在开发效率和程序性能上做出了质的飞跃。
java se development kit 21主要新特性
一、序列集合
jdk21中引入的序列集合(Sequenced Collections)为Java开发者提供了一种新的、有序的、线程安全的集合实现。其特性如下:
1、有序性:每个Sequenced Collection都保持元素插入的顺序。当你遍历集合时,元素将按照它们被添加到集合中的顺序出现。
2、线程安全性:Sequenced Collections提供了线程安全的集合实现,可以在多线程环境下安全地访问和修改集合中的数据。这是通过一种称为“Sequenced Locks”的特殊锁机制实现的,它允许多个线程同时读取集合中的数据,但只允许一个线程进行写操作。
3、可扩展性:Sequenced Collections的设计考虑了可扩展性,可以处理大量数据的并发访问。
4、统一的接口:Sequenced Collections提供了一个统一的接口来表示具有定义好的出现顺序的集合,这使得在API中表达某些有用概念变得更加容易。同时,它还提供了一套统一的与顺序相关的操作集,使得不同类型的集合在处理顺序相关操作时方式更加一致。
二、主要接口
java se development kit 21为Sequenced Collections引入了三个主要的接口:
1、SequencedCollection:这是表示具有定义好的出现顺序的集合的基础接口。它继承了Collection接口,并添加了一系列与顺序相关的方法,如reversed()、addFirst(E)、addLast(E)、getFirst()、getLast()和removeFirst()等。
2、SequencedSet:这是Set接口的扩展,表示有序且不包含重复元素的集合。它继承了Set和SequencedCollection接口,并提供了reversed()方法以返回一个反转顺序的SequencedSet。
3、SequencedMap<K,V>:这是Map接口的扩展,表示条目具有定义好的遍历顺序的映射。它继承了Map接口,并添加了一系列与顺序相关的方法,如reversed()、sequencedKeySet()、sequencedValues()、sequencedEntrySet()、putFirst(K, V)、putLast(K, V)、firstEntry()、lastEntry()、pollFirstEntry()和pollLastEntry()等。
三、虚拟线程
jdk21增加了虚拟线程,其特性如下:
1、轻量级且可大量创建:虚拟线程开销小,可以创建大量的线程,甚至达到百万级别,相比传统线程创建百万级别可能导致内存或系统崩溃。
2、简化并发模式模型:虚拟线程的轻量特性使得在实现每一个请求都开一个线程来提高程序并发性能变得可行,同时简化了编程模型。
3、高可扩展性:虚拟线程可以充分利用系统资源,提高对系统CPU核数的利用率。
4、简化代码:虚拟线程使得同步编程风格的代码并发成为可能,程序员无需使用复杂的非阻塞编程手法。
5、减少阻塞问题:虚拟线程阻塞时会自动切换到其他正在运行的线程,充分利用CPU时间,提高效率。
6、管理与调度不同:平台线程由操作系统进行管理和调度,而虚拟线程由JVM进行管理与调度。
7、线程规模不同:平台线程的规模受到操作系统的限制,而虚拟线程没有这个限制,理论上来说虚拟线程的最大数量要比平台线程大得多。
8、使用成本不同:虚拟线程由JVM管理,分配不需要进行系统调用,也不受系统上下文切换的影响。
四、字符串模板
String Templates(字符串模板) 目前仍然是 JDK 21 中的一个预览功能。String Templates 提供了一种更简洁、更直观的方式来动态字符串。通过使用占位符${},我们可以将变量的值直接嵌入到字符串中,而不需要手动处理。其特性如下:
1、基本语法:字符串模板使用了一种简洁的语法来嵌入表达式。通常,这种嵌入是通过特定的标记(如$符号或{}花括号)来实现的。在JDK 21中,具体的语法可能因模板处理器的不同而有所差异。
2、模板处理器:JDK 21提供了多种内置的模板处理器,如STR、FMT和RAW,它们各自具有不同的行为和功能。例如,STR用于执行基础的字符串插值,FMT支持格式化操作,而RAW则用于创建未处理的StringTemplate对象。
3、动态内容生成:通过字符串模板,开发者可以轻松地将变量的值、方法调用的结果或其他表达式嵌入到字符串中,实现动态内容的生成。
五、记录模式
java se development kit 21增强了Java编程语言,引入了记录模式,用于解构记录值。记录模式可以嵌套和组合,提供了一种功能强大、声明性和可组合的数据导向编程方式。其特性如下:
1、简洁性:记录模式使用简洁的语法来匹配和解构记录类型,避免了冗长的类型检查和属性访问代码。
2、可读性:记录模式的语法更加直观易懂,使得代码更加清晰易读。
3、灵活性:记录模式支持对记录类型的属性进行匹配和解构,可以根据实际需求灵活地处理不同的对象类型。
4、安全性:通过编译时检查确保访问的正确性,避免错误的字段访问或类型不匹配问题。
六、分代ZGC
jdk21中对 ZGC 进行了功能扩展,增加了分代 GC 功能。不过,默认是关闭的,需要通过配置打开。其特性如下:
1、低延迟和高吞吐量:
- 分代ZGC通过并发处理和分代回收的策略,实现了非常低的停顿时间,适合对响应时间要求高的应用场景。
- 在尽可能减少停顿时间的同时,分代ZGC也能保持较高的垃圾回收吞吐量。
2、大堆支持:
- 分代ZGC可以处理非常大的堆内存,适用于需要大内存容量的应用程序。在JDK 21中,ZGC支持的最大堆大小已经增加到了16TB以上。
3、分代收集机制:
- 分代ZGC在逻辑上将堆内存划分为年轻代和老年代。年轻代用于存放新创建的对象,老年代则用于存放生命周期较长的对象。
- 通过频繁扫描年轻代,分代ZGC可以更高效地利用CPU资源,并减少分配停滞的风险和所需的堆内存开销。
4、并发处理:
- 在年轻代和老年代的垃圾回收过程中,分代ZGC都采用了并发处理的方式。在垃圾回收期间,应用程序线程可以继续执行,减少了停顿时间。
5、染色指针和读屏障:
- 分代ZGC使用了染色指针技术来标记指针,帮助识别跨区域的引用,并减少额外的元数据开销。
- 读屏障技术则用于在读取对象引用时自动更新指针,以反映对象的新位置。
6、动态内存布局:
- 分代ZGC的内存布局是动态的,可以根据应用程序的实际内存需求动态创建和销毁内存区域。这种设计使得ZGC能够更好地适应不同的工作负载和对象分布模式。
七、Switch模式
增强 Java 中的 switch 表达式和语句,允许在 case 标签中使用模式。当模式匹配时,执行 case 标签对应的代码。其特性如下:
1、类型模式匹配:
- 在JDK 21中,switch语句支持类型模式匹配,允许在case标签中直接进行类型检查和模式匹配。开发者可以针对不同类型的对象编写不同的处理逻辑,而无需使用显式的类型转换或if-else语句。
2、守卫模式:
- 守卫模式进一步增强了switch语句的匹配能力。它允许在case标签中添加额外的条件检查,实现更加精细的控制流。这使得switch语句能够处理更复杂的条件逻辑。
3、模式匹配的switch表达式:
- 除了switch语句外,JDK 21还增强了switch表达式的功能,使其支持类型模式和守卫模式。模式匹配的switch表达式使得代码更加简洁和直观,同时提高了代码的可读性和可维护性。
4、改进的类型推断:
- JDK 21中的switch语句和表达式在类型推断方面进行了改进,编译器能够更好地推断出switch表达式的返回类型,减少显式类型声明的需求。这有助于简化代码,并减少潜在的错误。
5、增强的错误检测能力:
- JDK 21对switch语句和表达式的错误检测能力进行了增强,可以更早地捕捉潜在的错误和不一致。例如,如果switch语句或表达式中的所有可能情况都没有被处理,编译器将发出警告或错误提示。
八、程序集模块化
jdk 21还增强了程序集模块化,其特性如下:
1、通过引入java.assembly模块,为Java程序集提供了一种新的模块化方式。这种方式允许开发者定义程序集的依赖关系、导出模块等,实现了代码的有效隔离和重用。
2、提高代码的可维护性:通过模块化,可以将代码拆分成更小的、更易于管理的部分,降低了代码的复杂度。
3、增强代码的可重用性:模块化的代码可以被不同的项目共享和重用,避免了重复劳动。
4、便于和部署:模块化使得和部署过程更加自动化和标准化,提高了开发效率。
JAVA环境变量配置:
此电脑->右键->属性->高级系统设置->环境变量:
1、「用户变量」和「系统变量」分别新建2条变量
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.8.0_311(安装目录版本号路径)
2、「系统变量」双击->Path->编辑环境变量 -> 分别新建3条
%JAVA_HOME%\bin
C:\Program Files\Java\jdk21.0\bin
C:\Program Files\Java\jre21.0
3、# 检查JDK环境配置命令:
CMD 输入 java -version
JRE和JDK的区别?
如果在学习或从事Java开发、编译java程序,那么安装JDK
如果仅需运行java程序,只需要Java运行库,那么安装JRE
Java Development Kit(简称JDK)= Java开发套件, JAVA开发工具包 ,面向Java语言开发者。
Java Runtime Environment(简称JRE)= Java运行库,Java运行环境,面向Java程序用户们。
JDK:Java核心,含Java运行环境(JRE)、编译器(javac.exe)、开发工具(javadoc.exe、jar.exe、keytool.exe、jconsole.exe)和Java工具类库(如tools.jar)源代码等java语言编译所需的工具包。
JRE:Java语言开发的程序运行所需要的运行环境,包括JVM标准实现(java.exe等)及 Java核心类库(rt.jar等),它不包含开发工具(编译器、调试器等)
更新日志
v21.0.12.1版本
一、此更新发布的完整版本字符串是 21.0.12+7(其中“+”表示“”)。 版本号是 21.0.12。此 JDK 符合 Java SE 规范的第 21 版(JSR 396 2023-09-19)。
二、保持 JDK 更新 Oracle建议在每个关键补丁更新时更新JDK。 为了确定发布版本是否是最新的,可以使用安全基线页面来确定每个发布系列的最新版本。 重要的补丁更新包含安全漏洞修复,将在一年前通过 重要补丁更新、安全警报和公告 进行宣布。
三、其他注释
1、安全库/Java 安全:添加了WISeKey全球GB和GC根CA证书
2、安全库/Java 安全:添加了WISeKey全球GB和GC根CA证书
3、安全库/javax.net.ssl:在DTLS Cookie中包含客户端的主机和端口
4、安全库/Java 安全:限制证书吊销列表(CRL)下载的大小
5、此版本还包含修复了Oracle关键补丁更新中描述的安全漏洞。
展开内容
139.67MB
想快速修好一张照片,Snapseed就能派上用场:手指轻触画面即可直接调整,不必绕复杂流程。若想按自己的偏好细调,它备有二十九种工具与滤镜,可对亮度、环境、对比度、饱和度、白平衡、锐化等参数逐项微调,也能完成拉伸、旋转和剪裁。滤镜涵盖黑白、复古、戏剧、移轴等风格,给原片添些味道,普通人也能调出摄影作品般的观感。该应用由谷歌开发,适配安卓设备。
22.35MB
点金tool4seller是面向全球亚马逊卖家的店铺运营管理工具,主要围绕选品调研、关键词反查、销售统计、利润计算、库存管理、广告优化和售后服务等环节提供数据支持。软件能自动采集并归整经营数据,用比较直观的方式呈现出来,适合需要盯紧运营指标的卖家使用。
260.33MB
塔防之王5(KingofDefense5)是一款把塔防与策略结合起来的作品,喜爱城堡防御、塔防和勇士题材的用户都能在里边找到施展战术的空间,面对巨型首领时要靠解开谜题机制来取胜。
105.94MB
幸福甜点咖啡店(HappyDessertCafe)是一款以甜品咖啡店经营为题材的休闲作品,用户在其中扮演甜品店老板娘,从零起步把一家小店慢慢经营成有名气的美食店铺。
4.12MB
想在安卓手机上拍延时摄影,却又嫌专业设备太沉、太贵的话,TimeLapseCam只占4MB空间,装好就能开工。录制时把屏幕关掉,省电又不打扰旁人;画面尺寸随你定;快门提示音也能彻底消除。几个让人头疼的小毛病,它挨个处理掉了。于是那台闲置的老手机有了新差事,蹲守数小时、记录天光流转,或者剪一段有想法的短视频,它都扛得住。
64.38MB
想把家里的客厅或者健身房的角落变成训练场,还能随时翻看自己的运动记录,useehellapp就是冲着这类需求来的。这款应用由厂商推出,面向安卓手机用户,把健身课程、私教直播和运动数据记录整合在同一处。打开它,课程卡片摆在那里等你挑,专业私教、实时数据、个性计划、精彩直播以及在线游戏各占一块。想一个人跟着练就点课程,想凑热闹就进正在进行的直播课,跟教练同步动起来。
32.38MB
SmoothVideo Project(简称 SVP)是一款用于提升视频播放流畅度的免费工具。它本身并不带播放器界面,而是依靠一套算法在原有画面之间插入过渡帧,把帧率抬高,让运动画面看起来更顺滑。SVP 可以配合各类常见视频播放器工作,不需要更换日常使用的播放软件。不过在处理部分全高清视频时,它会占用较多的处理器和显卡资源,这一点需要提前了解。
79.65MB
Video Duplicate Finder 是一款专门用来查找和清理重复视频、图片的工具,适合想腾出磁盘空间或整理素材库的用户。添加要扫描的文件夹后,可以决定是否包含子目录、是否忽略只读文件夹,软件会自动比对并列出重复项。它支持视频缩略图和图片预览,方便逐条确认后再决定删哪个。扫描过程中还有日志窗口实时记录操作,清理过程看得见、追得回。
相片制造AVI视频(Freemore Slideshow Maker)
7.2MB
相片制造AVI视频(Freemore Slideshow Maker)是一款上手门槛不高的幻灯片制作工具,主要用来把零散照片整理成带转场和配乐的相片视频。它能够自动为照片之间加上过渡效果,并支持搭配背景音乐,让播放过程不至于单调。照片的停留时间间隔可以按需自行调整,节奏快慢由使用者说了算。输出画面方面,软件提供 320 x 240、640 x 480 以及 1280 x 960 几种解析度可选,方
10.79MB
视频翻转处理(Video Rotator)是一款轻巧的视频方向调整与格式转换工具。它能把视频左转或右转90度,也能做上下翻转、左右翻转,用来纠正手机或相机拍歪的画面。如果不想翻转,它同样可以当作一个简单的视频转档工具,把素材换成另一种格式再保存。
12.78MB
视频提取MP3(Video To MP3)是一款轻量级的声音提取工具,专门用来从各类视频文件里把音轨分离出来,并保存成通用的MP3格式。平时下载的电影、录屏、短视频,只要里面有你想要的声音,都可以用它转成独立的音频文件。软件的操作门槛不高,不需要懂音频编码知识,选好文件就能开始转换。
1.05MB
Clicky Gone 是一款方便隐藏应用程序窗口的轻量级工具。它允许你通过预先设定的键盘按键,快速把指定窗口从屏幕上藏起来。除了手动选择窗口,程序也能直接隐藏当前活动窗口。你还可以设置一个“老板键”,并让它发出轻微的提示音,以便在需要时迅速切换。
31.44MB
Python 是一门当前非常流行的编程语言,用途覆盖 Web 开发、数据分析、科学计算、桌面应及游戏开发等多个方向。它自带丰富的内置库,同时拥有大量第三方库可供调用,开发者不必从零开始写代码,就能搭建出功能完善的程序。相比其他语言,Python 学习门槛较低,没有编程基础的人也能上手使用,对新手比较友好。它依靠解释器来执行代码,省去了 C 或 C++ 那样的编译环节,源代码可以直接运行,编写和
344.04MB
海龟编辑器官方版是一款专门为少儿设计的Python编程工具,它把代码学习变成了搭积木一样的过程,让孩子在拼接模块的同时理解编程逻辑。这种形式能降低入门门槛,也更容易激起孩子对Python的兴趣,在动手尝试中慢慢提升学习能力。软件本身还具备较强的扩展性,可以配合硬件进行编程,第三方库也能一键完成安装。
1.29MB
elf文件解析工具绿色版是一款专门用来读取ELF格式文件信息的实用程序,能帮用户快速提取ELF头中的多项关键数据。它支持解析64位ELF文件,常见于ccs、mdk、iar等编译环境生成的.out文件,也能处理ARM/MDK编译输出的axf文件。软件在显示输出上做了优化,动态符号的呈现方式也有所改进,整体操作简单,性能表现不错。
41.91MB
台达触摸屏编程软件(Scredit) 是一款适用于程序员使用的触摸屏编程工具,它可以用于创建台达DOP-B、DOP-W、DOP-H系列触摸屏的人机界面,支持多种图形元素、动画效果和多语言输入,可以创建出美观、易用的触摸界面。软件具有编程文件制作、查看、元件管理、画面设置以及常见设置修改等功能,可以帮
4.47MB
MKScript 是一款免费的绿色工具,定位为鼠标键盘自动化脚本解释器。它让用户通过编写脚本,用程序代替双手自动完成一连串鼠标和键盘操作。软件内置了几十个与鼠标、键盘相关的函数,外加几个功能性函数,其中鼠标类函数以 mouse_ 开头,键盘类函数以 key_ 开头。脚本代码里的关键词和变量名区分大小写,但整体操作并不复杂,有相关需求的用户可以下载使用。
76.66MB
编程猫在线电脑版 一般又称 编程猫少儿编程 ,编程猫 少儿编程 教育app,是一款为7-16岁的青少年提供编程学习,内置编程猫体验课与正价课购买,同时提供家长课程资源,孩子作品的展示,以及一系列编程知识相关的视频内容,原创的编程相关的漫画作品连载等。 该软件软件专注研发适合中国儿童的编程教学体系,根
任意程序删除(Soft4Boost Any Uninstaller)
13.37MB
任意程序删除(Soft4Boost Any Uninstaller)是一款轻巧但性能出色的卸载工具,专门用来清理电脑中已安装的软件。它能帮你卸载那些不再需要或者已经损坏的程序,哪怕是通过 Windows 自带的“添加或删除程序”面板无法正常卸载的顽固软件,它也能处理。软件内置快速分析算法,可以扫描程序卸载后的残留文件,并支持三种不同模式来卸载、修改和修复程序。它还提供了多语言包和可更换的皮肤,并且
25.25MB
海泰克人机界面官方版(ADP6.13)是面向海泰克触摸屏设备的画面编辑工具,主要服务于工业自动化场景中的HMI系统开发。它把“所视即所得”作为核心设计思路,界面上字形大小、颜色、元件摆放、图形、刻度、底方块等元素,都会与最终人机界面呈现的效果保持一致。编辑操作方面,软件采用物件导向理念,支持拖入式编辑,用户能用鼠标把工作区里的元件拖到其他位置,也能调整外形和尺寸。该版本属于PWS系列、AP系列以及
3.21MB
WinHex绿色版是一款面向数据恢复与磁盘编辑场景的实用工具,能处理文件检查修复、误删文件找回以及硬盘损坏导致的数据丢失等常见紧急问题。它还能读取其他程序刻意隐藏的文件与数据,并且支持磁盘阵列RAID系统与动态磁盘的重组、分析和恢复。软件界面干净整洁,没有广告打扰,新用户跟着教程也能较快上手。作为一款16进制编辑器,它曾获得ZDNetSoftwareLibrary五星级最高评价,在Hex与ASCI