日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

JDK 9中已弃用Java的Observer和Observable

發(fā)布時(shí)間:2023/12/3 java 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JDK 9中已弃用Java的Observer和Observable 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在博客文章《 應(yīng)用JDK 9 @Deprecated增強(qiáng)功能》中 ,我討論了JDK 9中 @Deprecated批注中對(duì)forRemoval()和since()可選元素(方法)的添加 。 我在那篇文章中說(shuō):“在Java SE API上應(yīng)用新的JDK 9 @Deprecated方法還可以指導(dǎo)如何使用它們。” 在本文中,我將研究增強(qiáng)的@Deprecated批注對(duì)JDK類(lèi)java.util.Observable的應(yīng)用 。

幾乎從一開(kāi)始就存在java.util.Observable類(lèi)(自Java 1.0起)。 從JDK 9開(kāi)始,它將被標(biāo)記為已棄用。 以下屏幕快照顯示了Web瀏覽器中此類(lèi)的Javadoc表示形式的一部分。

這是我上一篇博文中描述的類(lèi)別“不推薦使用,無(wú)拆除計(jì)劃”的示例。 since()的存在提供了有關(guān)何時(shí)不推薦使用的信息(JDK 9),而缺少forRemoval()表明缺少具體的計(jì)劃來(lái)實(shí)際刪除該類(lèi)。 還以類(lèi)似的方式棄用了java.util.Observer接口 ,并且其文檔引用了Observable類(lèi)的文檔。

Observable文檔不僅在不推薦使用時(shí)進(jìn)行中繼,而且還記錄了Observable的問(wèn)題,這些問(wèn)題使不推薦使用,并提供了有關(guān)可能使用的替代Observable重要信息:


此類(lèi)和Observer接口已被棄用。 Observer和Observable支持的事件模型非常有限,Observable傳遞的通知順序未指定,并且狀態(tài)更改與通知不一一對(duì)應(yīng)。 對(duì)于更豐富的事件模型,請(qǐng)考慮使用java.beans包。 為了在線程之間進(jìn)行可靠且有序的消息傳遞,請(qǐng)考慮使用java.util.concurrent包中的并發(fā)數(shù)據(jù)結(jié)構(gòu)之一。 有關(guān)反應(yīng)式流樣式的編程,請(qǐng)參閱Flow API。

這是一個(gè)很好的例子,說(shuō)明Java開(kāi)發(fā)人員如何使用Javadoc標(biāo)記@deprecated來(lái)提供與棄用相關(guān)的更詳細(xì)的信息,甚至可以使用增強(qiáng)的@Deprecated注釋來(lái)提供。 JEP 277 (“增強(qiáng)的棄用”)明確列出了統(tǒng)一的Javadoc標(biāo)簽@deprecated和注釋@Deprecated為“非目標(biāo)”:“該項(xiàng)目的目標(biāo)不是將@deprecated的Javadoc標(biāo)簽與@Deprecated注釋統(tǒng)一。 ”

可以棄用Observable和Observer其他詳細(xì)信息可以在JDK-8154801中找到(“棄用Observer和Observable”)。 Josh Bloch 于19992月發(fā)表了一個(gè)引用,作為JDK-4180466的一部分(“為什么java.util.Observable類(lèi)不能序列化。”):


此類(lèi)不再處于積極開(kāi)發(fā)中。 它在JDK中基本上未使用,并且在大多數(shù)情況下已被1.1 Beans / AWT事件模型所取代。 …可觀察性已被廢棄,并且不再處于活躍狀態(tài)。

在大多數(shù)情況下,似乎Observer和Observable的使用并不多 ,因此棄用不應(yīng)該是一個(gè)大問(wèn)題,尤其是考慮到?jīng)]有明確的計(jì)劃將其完全刪除時(shí)。

翻譯自: https://www.javacodegeeks.com/2017/05/javas-observer-observable-deprecated-jdk-9.html

總結(jié)

以上是生活随笔為你收集整理的JDK 9中已弃用Java的Observer和Observable的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。