勁爆!Java 通用泛型要來了。。
300本計(jì)算機(jī)編程的經(jīng)典書籍下載
AI全套:Python3+TensorFlow打造人臉識(shí)別智能小程序
最新人工智能資料-Google工程師親授 Tensorflow-入門到進(jìn)階
黑馬頭條項(xiàng)目 - Java Springboot2.0(視頻、資料、代碼和講義)14天完整版
文?:?白開水 出品 : OSC開源社區(qū)(ID:oschina2013)
Infoworld 消息指出,根據(jù) OpenJDK 提案,Java 將獲得通用泛型(universal generics),此舉旨在使該語言更易于使用。?不過該規(guī)劃本身需要花費(fèi)數(shù)年時(shí)間才能實(shí)現(xiàn)。 通用泛型最初將通過 OpenJDK 社區(qū)中的三個(gè)提案來實(shí)現(xiàn)。 甲骨文方面表示,這些提議將極大地改變 Java 語言和 JVM,結(jié)合類的靈活性和基元的性能。一切(包括基元)都將成為一個(gè)對(duì)象。但是所選擇的路徑并不會(huì)降低基元的性能,而是使類的性能與基元一樣。 三個(gè) JDK Enhancement Proposals(JEP)中的每一個(gè)都提供了不同的功能,但想要達(dá)到預(yù)期的效果,則需要結(jié)合這三個(gè)提案。 其中最主要的是一份于 2 月創(chuàng)建并于 10 月 29 日更新的 JEP 草案,它要求通過允許 Java 類型變量覆蓋這兩種類型來統(tǒng)一對(duì)泛型代碼中引用和原始值類型的處理。將會(huì)產(chǎn)生新的 warnings,以維護(hù)通用代碼的安全保證.
使用用戶聲明的原始對(duì)象增強(qiáng) Java 對(duì)象模型的第二個(gè) JEP 將作為先決條件;計(jì)劃將基本基元與對(duì)象統(tǒng)一起來的第三個(gè) JEP,預(yù)計(jì)也會(huì)推進(jìn)。其他 JEP 則將隨之更新標(biāo)準(zhǔn)庫(kù)、解決 null warnings 和使庫(kù)為專業(yè)化做好準(zhǔn)備,并在 JVM 中引入通用 API 的運(yùn)行時(shí)專業(yè)化。搜索公眾號(hào)互聯(lián)網(wǎng)架構(gòu)師回復(fù)“2T”,送你一份驚喜禮包。 通用泛型計(jì)劃提倡讓 generic API 直接支持 primitive value types ,以便直接對(duì) custom-defined primitives 進(jìn)行操作;引用類型也將被支持。 提案指出,理想情況下這應(yīng)該是 Java 泛型的默認(rèn)行為,這樣 primitive value types 就可以完全參與到 Java 生態(tài)系統(tǒng)中。目前還沒有確定通用泛型何時(shí)會(huì)出現(xiàn)在 Java 中,但預(yù)計(jì)仍需要很多年才能實(shí)現(xiàn)。 且通用泛型將擴(kuò)展平臺(tái)中現(xiàn)有的泛型能力。 2004年推出的 Java 2 Platform 和 Standard Edition 5.0 為語言和平臺(tái)帶來了泛型,允許開發(fā)者識(shí)別他們想要存儲(chǔ)在集合中的內(nèi)容,并使迭代器類型安全。但在 2004 年的泛型迭代中,開發(fā)者只能對(duì)引用類型進(jìn)行泛化。 通過將基元與引用統(tǒng)一起來,可以采取下一步措施,允許類型參數(shù)在所有類型上進(jìn)行范圍化。 值得一提的是,Java 并不是唯一關(guān)注泛型功能的語言,Go 1.18 也計(jì)劃支持泛型。
全棧架構(gòu)社區(qū)交流群
?「全棧架構(gòu)社區(qū)」建立了讀者架構(gòu)師交流群,大家可以添加小編微信進(jìn)行加群。歡迎有想法、樂于分享的朋友們一起交流學(xué)習(xí)。
看完本文有收獲?請(qǐng)轉(zhuǎn)發(fā)分享給更多人
往期資源:
評(píng)論
圖片
表情
