Java異常的知識(shí)整理

Java 異常

“真誠(chéng)服務(wù),讓網(wǎng)絡(luò)創(chuàng)造價(jià)值”是我們的服務(wù)理念,創(chuàng)新互聯(lián)建站團(tuán)隊(duì)十年如一日始終堅(jiān)持在網(wǎng)站建設(shè)領(lǐng)域,為客戶提供優(yōu)質(zhì)服。不管你處于什么行業(yè),助你輕松跨入“互聯(lián)網(wǎng)+”時(shí)代,PC網(wǎng)站+手機(jī)網(wǎng)站+公眾號(hào)+小程序定制開(kāi)發(fā)。

1.繼承關(guān)系

Java 異常的知識(shí)整理

2.Error

程序運(yùn)行時(shí)發(fā)生的無(wú)法被處理的錯(cuò)誤,一旦發(fā)生,JVM終止執(zhí)行。

3.Exception

Exception是程序編譯與運(yùn)行時(shí)出現(xiàn)的一種錯(cuò)誤,一旦出現(xiàn),JVM將告知程序員處理。

分為兩種:

運(yùn)行時(shí)異常:在運(yùn)行時(shí)發(fā)生,RuntimeException類及子類。編譯時(shí)不需要處理,發(fā)生在運(yùn)行階段。常見(jiàn)的有NullPointerException\StringIndexOutOfBounds \ClassCastException  \ArrayIndexOutOfBounds。
編譯時(shí)異常(受查異常):代碼編寫(xiě)時(shí)必須處理的異常,若不處理,編譯無(wú)法通過(guò)。編譯時(shí)異常在編譯代碼階段設(shè)置了處理措施,所以即使發(fā)生異常,可能也不會(huì)影響程序的正常運(yùn)行,有些系統(tǒng)因此將編譯時(shí)異常視作正常情況處理,比如Spring默認(rèn)發(fā)生

編譯時(shí)異常時(shí)正常提交。在程序中顯式地拋出異常相當(dāng)于編譯階段必須處理的異常,屬于編譯時(shí)異常。常見(jiàn)的有ClassNotFoundException \FileNotFounException\ParseException\SQLException\IOException。

兩種異常劃分的依據(jù)是實(shí)際發(fā)生的概率,JVM將發(fā)生幾率高的異常當(dāng)做受查異常,要求程序員在編寫(xiě)代碼時(shí)處理,而運(yùn)行時(shí)異常JVM認(rèn)為發(fā)生幾率很低,不需要程序員處理。

4.try...catch...finally...

用于在方法內(nèi)部捕獲并處理異常。
將可能發(fā)生異常的語(yǔ)句塊放在try后,異常發(fā)生時(shí)try語(yǔ)句塊停止執(zhí)行,跳到catch語(yǔ)句塊執(zhí)行,catch語(yǔ)句塊執(zhí)行完畢,將繼續(xù)執(zhí)行catch語(yǔ)句塊后面的代碼。
無(wú)論是否發(fā)生異常,finally語(yǔ)句塊都會(huì)執(zhí)行,通常將關(guān)閉資源的代碼放在其中。

5.自定義異常

繼承Exception,在指定條件下拋出異常"throw MyException(xxxx)",目的是詳細(xì)地反映程序運(yùn)行狀況。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

當(dāng)前標(biāo)題:Java異常的知識(shí)整理
標(biāo)題來(lái)源:http://bm7419.com/article16/geepdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、品牌網(wǎng)站設(shè)計(jì)、全網(wǎng)營(yíng)銷推廣、Google、定制網(wǎng)站、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管