惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 三生石上(FineUI控件)
V
Vulnerabilities – Threatpost
C
Cisco Blogs
A
Arctic Wolf
L
LINUX DO - 热门话题
P
Proofpoint News Feed
Security Latest
Security Latest
AWS News Blog
AWS News Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Cisco Talos Blog
Cisco Talos Blog
L
Lohrmann on Cybersecurity
W
WeLiveSecurity
爱范儿
爱范儿
Last Week in AI
Last Week in AI
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
Security Affairs
PCI Perspectives
PCI Perspectives
C
Cybersecurity and Infrastructure Security Agency CISA
Spread Privacy
Spread Privacy
IT之家
IT之家
月光博客
月光博客
云风的 BLOG
云风的 BLOG
宝玉的分享
宝玉的分享
J
Java Code Geeks
美团技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
I
Intezer
博客园_首页
博客园 - 司徒正美
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
P
Palo Alto Networks Blog
NISL@THU
NISL@THU
Recent Commits to openclaw:main
Recent Commits to openclaw:main
有赞技术团队
有赞技术团队
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
量子位
The Last Watchdog
The Last Watchdog
Google Online Security Blog
Google Online Security Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 聂微东
N
News and Events Feed by Topic
Webroot Blog
Webroot Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Security @ Cisco Blogs
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
V
V2EX
Jina AI
Jina AI

See you soon

哟,好久不见,无线打印 | See you soon 试试将文章版本化管理吧 | See you soon 使用 Quadlet 将 Podman 中的 Postgres 当作 systemd 服务运行 | See you soon 大他者,那个无时无刻都在盯着你的东西 | See you soon Laws of Software Engineering,软件工程定律 | See you soon 浅记多因素身份认证 | See you soon Linux 内核中的度量单位 | See you soon 重置 GPG 智能密钥 | See you soon 向 NAS 引入 samba | See you soon 无法重复键入的 Fcitx5 | See you soon ZFS 降级事故 | See you soon 记被 XanMod Kernel 和 AppArmor 联合坑的一次踩坑 | See you soon agent 的 skill 与 toolcall | See you soon 记一次服务器被挂恶意挖矿二进制 | See you soon 活着的 Arc | See you soon 令 acme.sh 使用 Cloudflare 的 DNS API 签发与续签证书 | See you soon 于 Tokio 中卸载 CPU Bound 任务 | See you soon 如我所见,梦破碎的时候 | See you soon 74LS 家族手册 | See you soon 关于历史 | See you soon 用 curl 下载 OnePlus 的 ROM | See you soon 实用命令切片 | See you soon 再见,Oh My Zsh。 | See you soon 你不应该复用 strings.Builder | See you soon 博客的明日 | See you soon 被 AppArmor 击杀的 Dockge | See you soon AI 时代的自我 | See you soon 支持删除的布隆过滤器 | See you soon 基于栈的虚拟机与基于寄存器的虚拟机 | See you soon RVA23 包含了什么 | See you soon Rust 的边界检查是否已经有很大的进步 | See you soon 使用 Rust 编写操作系统:Barebones | See you soon 使用 Rust 编写操作系统:引言 | See you soon 编译器笔记:rope | See you soon 编译器笔记:CST | See you soon Paradoxical 札记 | See you soon 简单的相似去重算法(基于向量) | See you soon 更加现代的 PaperMC Minecraft 插件设计指南 | See you soon 简单的 CFG 语法分析方法 | See you soon 简单地使用 Caddy 实现 CORS 配置 | See you soon 让 OpenCV 可以被静态链接 | See you soon 图片搜索笔笺 | See you soon 电路板设计笔记-保护 | See you soon 使用 Rust 实现 SnowflakeId | See you soon 农夫乐事 FaQ 启示 | See you soon 使用 Rust 实现拓展系统札记 | See you soon 遗传学定律的代码实现 | See you soon EN:The Journey of Rust and Procps | See you soon ZH:Rust 与 Procps 之旅 | See you soon 使用 debootstrap 与 schroot 构建一个纯净环境 | See you soon GPG添加新的用户信息 | See you soon GSoC2024 笔记:使用 Rust 重新实现 procps | See you soon JWT 小册 | See you soon 使用密钥登录 SSH | See you soon Guava:Cache | See you soon 编译器笔记:增量编译 | See you soon Gradle秘境:添加一个类似modCompileOnly的依赖块 | See you soon Minecraft:原始经济系统设计简述 | See you soon TinyRemapper笔记 | See you soon MicroOS:进阶 | See you soon MicroOS:起步 | See you soon Swapfile 指北 | See you soon GPG 物理密钥的安装与密钥的迁移 | See you soon 用GPG签名告诉大家这就是我的提交 | See you soon DFS:深度优先搜索 | See you soon 文章翻译:从init.vim到init.lua | See you soon 目录遍历攻击 | See you soon 如何挂载.img文件,以及如何使用QEMU模拟arm64环境 | See you soon 在树莓派上编译 OpenCV | See you soon 关于卸载BlueStacks后遇到的问题 | See you soon
JDK Projects 备忘录 | See you soon
Krysztal Huang · 2026-02-03 · via See you soon

他们开始建造城和塔。他们用火烧砖,把砖当石头来用。他们又拿石漆当灰泥,石漆来自海水和希纳尔的泉水。他们用了四十三年的时间来建城和造塔。塔的宽度有 203 块砖。每块砖的长度是高度的三倍。塔的高度是 5433 腕尺又 2 掌。〔塔的墙〕长十三斯塔德。

整理了一下 JDK 的各个 project,作为一个简单的导航

NOTE

在评论项目和挑选相关 JEP 的时候有极强的个人偏好,不作为评判的唯一标准

Project Amber

  • 项目网页:https://openjdk.org/projects/amber/
  • 项目目的:
    • 探索和孵化那些已被 OpenJDK JEP 流程接受为候选 JEP 的、更小型的、以提高生产力为导向的 Java 语言特性

该项目主要用于接受能够提高 Java 开发体验的 JEP,在最近几年影响较大的 JEP 包含如下

  • 513:灵活的构造函数体
    • 可以在构造器中更加灵活的编写代码。
    • 在此 JEP 合并之前,不可以在调用 this 或者 super 之前编写语句
  • 441:switch 的模式匹配
    • 在此 JEP 合并之前,不可以在 switch 中对类型进行匹配
    • 在此 JEP 合并之前,在 switch 中进行条件判断非常复杂
  • 361:switch 表达式
    • 在此 JEP 合并之后,可以在 switch 中编写具有返回值的语句

Project Babylon

  • 项目网页:https://openjdk.org/projects/babylon/
  • 项目目的:
    • 将 Java 的应用范围扩展到其他编程模型,例如 SQL、可微分编程、机器学习模型以及 GPU。
    • 巴比伦将通过增强 Java 的反射编程能力来实现这一目标,这种增强被称为代码反射。

暂时没有用过 XD。现在对于这个东西的直观感受是很能提高 Minecraft 的运行体验

Project Valhalla

  • 项目网页:https://openjdk.org/projects/valhalla/
  • 项目目的:
    • 通过值对象增强 Java 对象模型,将面向对象编程的抽象性与简单原始类型的性能特征相结合
    • ↑ 好简单粗暴但是巨恐怖的话啊

可以说这是 Java 和 JVM 的一次脱胎换骨,提供了值对象/值类型来进一步强化 JVM 的性能表现和开发体验。其带来的改进不是一点半点的,除了字面意的试图引入值对象和值类型,作为其基础工作还需要引入不可空类型。

而不可空类型的重要性不言而喻,相当于引入了 Rust 等语言的「引用永远不为空」理念

个人感觉如下的 JEP 将会对 Java/JVM 引来质变

  • JEP 草案:空值限制与可空类型(预览版)
    • 增强 Java 的引用类型,使程序员能够表达 null 引用是否被预期为该类型的值
    • 支持在不同空值属性类型之间进行转换,同时提供关于可能不当处理 null 值的警告
    • 与传统 Java 代码兼容互操作,这些代码未对其类型的 null 兼容性做出断言,并支持逐步采用这些新特性,而不会引入源代码或二进制不兼容性
    • 确保拒绝 null 值的类型变量在首次读取前完成初始化
    • 在运行时强制执行拒绝 null 值的类型,即使类被单独编译
    • 为运行时优化(例如值对象的扁平化)提供必要的元数据与完整性保证,使其能够依赖那些声称排除 null 的类型
  • JEP 218:原始类型泛型
    • 扩展泛型类型以支持泛型类和接口在基本类型上的特化。
    • 该 JEP 旨在实现基于原始类型或者结构体的特化泛型,具体行为表现如 C# 一般按需特化,为泛型类型填充为具体的类型
      • 该行为更简单的理解是从 Java 现在的”伪”泛型、类型擦除走向”真”泛型

Project Loom

  • 项目网页:https://wiki.openjdk.org/display/loom/Main
  • 项目目的:旨在探索、孵化和交付基于 Java 虚拟机特性的 API,以支持 Java 平台上易于使用、高吞吐量的轻量级并发和新的编程模型。

NOTE

很高兴的是 Project Loom 终于进入了人们的视野,新的项目已经开始利用虚拟线程来提高平台吞吐量。

并且得益于其优秀的设计,代码更改量非常少。

  • 425:虚拟线程(预览版)
    • 为 Java 平台引入虚拟线程 。虚拟线程是一种轻量级线程,能显著降低编写、维护和观察高吞吐量并发应用程序的工作量。
    • 使采用简单的一请求一线程风格编写的服务器应用程序能够以接近最优的硬件利用率进行扩展。
    • 使使用 java.lang.Thread API 的现有代码能够以最小的改动采用虚拟线程。
    • 使现有的 JDK 工具能够轻松地对虚拟线程进行故障排除、调试和分析。
  • 428:结构化并发(孵化器)
    • 通过引入结构化并发 API 来简化多线程编程。结构化并发将运行在不同线程中的多个任务视为一个工作单元,从而简化错误处理和取消操作,提高可靠性,并增强可观测性。
    • 提升多线程代码的可维护性、可靠性和可观测性。
    • 推广一种并发编程风格,能够消除因取消和关闭操作引发的常见风险,例如线程泄漏和取消延迟。

结构化并发很接近于 Golang 的 context,如果不熟悉的话可以粗略的看一眼 Golang 的 context 包功能和提供的方法。