新聞中心
AutoCloseable

創(chuàng)新互聯(lián)專注于丹鳳網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供丹鳳營(yíng)銷型網(wǎng)站建設(shè),丹鳳網(wǎng)站制作、丹鳳網(wǎng)頁(yè)設(shè)計(jì)、丹鳳網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造丹鳳網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供丹鳳網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
public interface AutoCloseable一個(gè)在關(guān)閉之前可能持有資源(例如文件或套接字句柄)的對(duì)象。 AutoCloseable 對(duì)象的 close() 方法在退出資源規(guī)范標(biāo)頭中已為其聲明對(duì)象的 try-with-resources 塊時(shí)自動(dòng)調(diào)用。 這種構(gòu)造確保了及時(shí)釋放,避免了資源耗盡異常和錯(cuò)誤,否則可能會(huì)發(fā)生。
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| void | close() | 關(guān)閉此資源,放棄任何基礎(chǔ)資源。 |
方法詳情
close
void close() throws Exception
關(guān)閉此資源,放棄任何基礎(chǔ)資源。此方法在由 try-with-resources 語(yǔ)句管理的對(duì)象上自動(dòng)調(diào)用。
雖然此接口方法被聲明為拋出異常,但強(qiáng)烈建議實(shí)現(xiàn)者聲明 close 方法的具體實(shí)現(xiàn)以拋出更具體的異常,或者如果關(guān)閉操作不會(huì)失敗,則根本不拋出異常。
關(guān)閉操作可能失敗的情況需要實(shí)施者仔細(xì)注意。強(qiáng)烈建議在拋出異常之前放棄底層資源并在內(nèi)部將資源標(biāo)記為已關(guān)閉。 close 方法不太可能被多次調(diào)用,因此可以確保及時(shí)釋放資源。此外,它減少了資源包裝或被另一個(gè)資源包裝時(shí)可能出現(xiàn)的問(wèn)題。
強(qiáng)烈建議此接口的實(shí)現(xiàn)者不要讓 close 方法拋出 InterruptedException。此異常與線程的中斷狀態(tài)交互,如果 InterruptedException 為 Throwable#addSuppressed,則可能發(fā)生運(yùn)行時(shí)錯(cuò)誤行為。更一般地說(shuō),如果抑制異常會(huì)導(dǎo)致問(wèn)題,則 AutoCloseable.close 方法不應(yīng)拋出它。
請(qǐng)注意,與 Closeable 的 close 方法不同,此 close 方法不需要是冪等的。換句話說(shuō),多次調(diào)用此 close 方法可能會(huì)產(chǎn)生一些可見的副作用,這與 Closeable.close 不同,如果多次調(diào)用則要求無(wú)效。但是,強(qiáng)烈建議此接口的實(shí)現(xiàn)者使他們的 close 方法具有冪等性。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| Exception | 如果無(wú)法關(guān)閉此資源 |
分享標(biāo)題:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSAutoCloseable
文章來(lái)源:http://www.fisionsoft.com.cn/article/ccsoggi.html


咨詢
建站咨詢
