編輯 | 云昭
編程賽道,越來(lái)越有意思了!
當(dāng)大模型的編程能力強(qiáng)勁到讓人驚呼:未來(lái)不要再學(xué)編程的時(shí)候,卻忽然發(fā)現(xiàn):編程語(yǔ)言本身,一直都在扼住大模型編程能力的咽喉。
很簡(jiǎn)單的一個(gè)原因,大模型總是從已有的代碼庫(kù)中巧取豪奪,汲取營(yíng)養(yǎng),一旦一種編程語(yǔ)言新改寫(xiě)了語(yǔ)法,那不又是一個(gè)輪回了?
而巧的是,Java 已經(jīng)發(fā)起了沖鋒。
就在本周三,30 歲的 Java 迎來(lái)了他的第 25 個(gè)大版本。沒(méi)錯(cuò),Java 25 發(fā)布了!
在 AI 吞噬一切的巨浪中,這款新版本又能講出怎樣的故事呢?
小編是個(gè)情懷黨,忍不住點(diǎn)開(kāi)官網(wǎng),去看看這款曾帶來(lái)自己青春記憶的語(yǔ)言。
看完介紹后,小編放心了:大模型再猛,編程語(yǔ)言也不會(huì)被干廢。編程不死,Java 不死!
圖片
那么,Java25究竟帶來(lái)了哪些變化呢?
這就給大家一一整理。
一、先說(shuō)整體感覺(jué)
這個(gè)新版本的發(fā)布,主要有三點(diǎn)。其一,正在努力拉近與新手的距離,降低了學(xué)習(xí)曲線的陡峭程度;其二,一如既往面向企業(yè)級(jí)應(yīng)用,更加安全放心;其三,Java已經(jīng)在為 AI 時(shí)代做好準(zhǔn)備。
1. Java 25 為初學(xué)者“減負(fù)”
一直以來(lái),相較于Python,Java 的學(xué)習(xí)門(mén)檻被很多新人吐槽太高。
但隨著本周 Java 25 的發(fā)布,Oracle 給出了新的答案。
過(guò)去,Python 讓學(xué)生只需一行代碼就能寫(xiě)出第一個(gè)“Hello World”程序,而 Java 則必須強(qiáng)制新手理解 public static void main(String[] args) 這樣的令人困惑的“魔咒”,才能順利在屏幕上打印出來(lái)。
Java 25 直接解決了這個(gè)問(wèn)題:
void main() {
println("Hello World");
}新的 JEP 512(緊湊源文件 & 實(shí)例 Main 方法),讓學(xué)生不必一開(kāi)始就理解復(fù)雜的語(yǔ)言機(jī)制。
Oracle 在博客中,稱(chēng)之為“平滑上路”,既方便入門(mén),又不會(huì)阻礙程序成長(zhǎng)。
這不只是入門(mén)學(xué)習(xí)上的利好。其實(shí),IT 管理員寫(xiě)腳本、工具開(kāi)發(fā)者寫(xiě)小程序,也能少掉不少冗余代碼。
除此之外,還有不少化繁為簡(jiǎn)的調(diào)整。
一位早期使用者表示,“我喜歡 Java 25 讓語(yǔ)言更易用、更具表現(xiàn)力,去掉了許多繁瑣的環(huán)節(jié)?!?/span>
他舉例:“你不再需要在源文件中把所有代碼都包進(jìn)一個(gè)類(lèi),也不用在構(gòu)造函數(shù)里顯式寫(xiě) super() 或 this() 調(diào)用?!?/span>
這些可能看起來(lái)微不足道,但在如今開(kāi)發(fā)者可選語(yǔ)言和工具眾多的環(huán)境下, Java 必須進(jìn)化,“既要不斷發(fā)展提供新功能,又不能用過(guò)多的負(fù)擔(dān)來(lái)拖慢開(kāi)發(fā)者。”
從這兩個(gè)例子就可以很明顯地看出,Oracle 的維護(hù)者們正在讓 Java 變得更加易用且令人舒服。
2. 學(xué)習(xí)生態(tài)全面升級(jí)
隨著 Java 即將迎來(lái)第四個(gè)十年,Oracle 似乎已經(jīng)意識(shí)到:一門(mén)語(yǔ)言的普及,不僅取決于企業(yè)級(jí)功能,也取決于新手的第一段學(xué)習(xí)體驗(yàn)。
- 與 College Board 合作,更新 AP 計(jì)算機(jī)課程,告別過(guò)時(shí)的 Java 7/8;
- 推出 Learn.java 學(xué)習(xí)網(wǎng)站,提供在線 Playground,學(xué)生無(wú)需安裝環(huán)境即可寫(xiě)代碼,這也就可以與面向開(kāi)發(fā)者的 Dev.java 區(qū)分開(kāi)來(lái);

- Java Playground 也新增了代碼片段分享功能,老師可以直接創(chuàng)建練習(xí),學(xué)生無(wú)需安裝環(huán)境就能在瀏覽器運(yùn)行。
在教學(xué)場(chǎng)景下,一位美國(guó)大學(xué)的榮休教授表示,他最喜歡 Java 25 的三點(diǎn):緊湊源文件、實(shí)例 Main 方法和模塊導(dǎo)入聲明,“它們不僅降低了初學(xué)門(mén)檻,也讓經(jīng)驗(yàn)豐富的程序員在處理日常小任務(wù)時(shí)受益?!?/span>
3. 為 AI 技能打基礎(chǔ)
Java 25 面向初學(xué)者的優(yōu)化,同樣延伸到了 AI 開(kāi)發(fā)領(lǐng)域。盡管 Python 在機(jī)器學(xué)習(xí)研究中占主導(dǎo),但 Java 在企業(yè)級(jí) AI 系統(tǒng)生產(chǎn)環(huán)境中依然關(guān)鍵。
Oracle Java 開(kāi)發(fā)者關(guān)系副總裁 Arimura 在發(fā)布會(huì)上總結(jié)了三種 Java 與 AI 的結(jié)合場(chǎng)景:
- AI 工具正在生成 Java 代碼 —— 無(wú)論是 Oracle 的 Code Assist,還是集成 AI 功能的流行編輯器,都讓開(kāi)發(fā)者寫(xiě) Java 更快。
- 現(xiàn)有應(yīng)用需要新增 AI 功能 —— 框架如 LangChain4J 和 Spring AI(近期都發(fā)布了 1.0 版本)讓集成更容易。
- 專(zhuān)門(mén)團(tuán)隊(duì)用 Java 構(gòu)建自定義機(jī)器學(xué)習(xí)系統(tǒng) —— 依靠其性能和生態(tài)優(yōu)勢(shì)。
其中,簡(jiǎn)化語(yǔ)法對(duì) AI 腳本和原型尤為有幫助。JEP 511(模塊導(dǎo)入聲明)讓開(kāi)發(fā)者能一次性導(dǎo)入整個(gè)模塊,更便于拼接 AI 推理和工作流。
此外,自 Java 21 引入的虛擬線程,在 AI 場(chǎng)景中得到廣泛應(yīng)用,因?yàn)闄C(jī)器學(xué)習(xí)推理通常涉及大量并發(fā)操作。
4.從課堂到企業(yè)職場(chǎng)
Java 25 給出的路徑是清晰的:學(xué)生從簡(jiǎn)潔語(yǔ)法入手,逐步掌握模式匹配(JEP 507)、結(jié)構(gòu)化并發(fā)(JEP 505)、向量 API(JEP 508)等高級(jí)特性。這些能力直接服務(wù)于 AI 推理和計(jì)算。
Oracle 的 VS Code 插件(接近 400 萬(wàn)次下載,評(píng)分 5.0)也在促進(jìn)這種過(guò)渡,幫助學(xué)生和 AI 開(kāi)發(fā)環(huán)境接軌。
性能優(yōu)化方面,Java 25 通過(guò) Project Leyden 帶來(lái)了提前編譯(JEP 514、JEP 515),加快啟動(dòng)速度;JEP 519 緊湊對(duì)象頭則減少了內(nèi)存占用。這些都讓 Java 更高效地運(yùn)行在云環(huán)境中,直接降低 AI 應(yīng)用的成本。
與 AI 相關(guān)的 JEP 包括:
- JEP 507:原始類(lèi)型模式匹配
- JEP 511 模塊導(dǎo)入聲明:快速整合 AI 庫(kù)和工作流;
- JEP 508 向量 API:提升推理與計(jì)算性能;
- JEP 453 結(jié)構(gòu)化并發(fā):便于運(yùn)行并行任務(wù);
- JEP 506 作用域值(Scoped Values):高效共享不可變數(shù)據(jù),降低內(nèi)存開(kāi)銷(xiāo)。
5.Java 生態(tài)與 AI 同步發(fā)展
與此同時(shí),Java 生態(tài)也在同步向 AI 跟進(jìn):
- LangChain4j 發(fā)布 1.0,支持多模態(tài)與 Agent 模式;
- Spring AI 1.0 GA,集成 MCP 協(xié)議與工具調(diào)用;
- Embabel 框架 推出,支持目標(biāo)導(dǎo)向的智能體開(kāi)發(fā)。
可以說(shuō),Java 已經(jīng)在“AI 時(shí)代的基礎(chǔ)設(shè)施”之路上,補(bǔ)齊了不少短板。
Oracle 高級(jí)副總裁、OpenJDK 管理委員會(huì)主席 Georges Saab 表示:“Java 25 突出了 Oracle 在 AI 解決方案和語(yǔ)言簡(jiǎn)化上的持續(xù)投入,讓新開(kāi)發(fā)者和 IT 團(tuán)隊(duì)更容易學(xué)會(huì) Java?!?/span>
6. 長(zhǎng)期支持,企業(yè)安心
官網(wǎng)介紹,Java 25 是一個(gè) 長(zhǎng)期支持(LTS)版本:
- 免費(fèi)更新到 2028 年 9 月
- 商業(yè)支持至少持續(xù)到 2033 年 9 月
這意味著企業(yè)可以用最小的維護(hù)成本,安心運(yùn)行應(yīng)用,并按照自身節(jié)奏在合適的時(shí)機(jī)完成遷移。
Oracle 表示,JDK 25 在 2028 年 9 月前會(huì)按季度更新安全與性能;此后更新將通過(guò) Java SE Oracle 技術(shù)網(wǎng)絡(luò)(OTN)許可證提供,至少持續(xù)至 2033 年 9 月。
二、迎戰(zhàn)AI,Java 長(zhǎng)青的秘密
AI 時(shí)代的降臨與爆發(fā),讓編程語(yǔ)言的發(fā)展節(jié)奏出現(xiàn)很明顯地變化。
正如Azul Systems 副 CTO Simon Ritter 所評(píng)論的:“AI 正在超越單純的提示交互,進(jìn)入自主 Agent 階段。這很吸引人,也有點(diǎn)令人擔(dān)心?!?/span>
對(duì)此,天生適配 AI 領(lǐng)域的 Python 依舊在科研端強(qiáng)大,而運(yùn)轉(zhuǎn)在全球無(wú)數(shù)終端的 Java,正在悄悄完成一場(chǎng)“重生”,在 AI 時(shí)代找到新的立足點(diǎn)。
Java語(yǔ)言的維護(hù)者似乎給出了一個(gè)演進(jìn)路徑。
對(duì)新手,降低學(xué)習(xí)曲線,打造順滑上路體驗(yàn);對(duì)教育,課程與工具全面升級(jí);對(duì) AI:語(yǔ)法、性能與生態(tài)一起進(jìn)化。
今年5月,Java之父高斯林在采訪中這樣解釋 Java 長(zhǎng)青的秘密,就用它來(lái)結(jié)束這篇文章吧,周末愉快!
“為什么 Java 能活 30 年?”
“解決實(shí)際問(wèn)題、尊重用戶(hù)、保持兼容、提升生產(chǎn)力、保證可靠性?!?/span>
“不是追時(shí)髦,而是讓工程師把工作完成。”
“我當(dāng)時(shí)很怕他們(Oracle)搞砸,結(jié)果他們居然做得還不錯(cuò)?!?/span>

























