真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java處理異常的方法有哪些

這篇文章主要講解了“Java處理異常的方法有哪些”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Java處理異常的方法有哪些”吧!

我們一直強(qiáng)調(diào)成都做網(wǎng)站、成都網(wǎng)站建設(shè)對(duì)于企業(yè)的重要性,如果您也覺得重要,那么就需要我們慎重對(duì)待,選擇一個(gè)安全靠譜的網(wǎng)站建設(shè)公司,企業(yè)網(wǎng)站我們建議是要么不做,要么就做好,讓網(wǎng)站能真正成為企業(yè)發(fā)展過程中的有力推手。專業(yè)網(wǎng)站制作公司不一定是大公司,創(chuàng)新互聯(lián)建站作為專業(yè)的網(wǎng)絡(luò)公司選擇我們就是放心。

一、異常的分類

Throwable是所有異常的超類,下一級(jí)可以分為Error和Exception :

1. Error

Error是指Java運(yùn)行時(shí)系統(tǒng)內(nèi)部的錯(cuò)誤,或者說它代表了JVM本身的錯(cuò)誤,通常都是比較嚴(yán)重的錯(cuò)誤,比如內(nèi)存溢出, 虛擬機(jī)錯(cuò)誤等等;Error通常和硬件或JVM有關(guān),和程序本身無關(guān),所以不能被代碼捕獲和處理。

2. Exception

我們經(jīng)常說的異常是指Exception,又可以分成運(yùn)行時(shí)異常和檢查異常。

RuntimeException:運(yùn)行時(shí)異常,這類異常在編譯期間不強(qiáng)制代碼捕捉,但是可能在在 JVM 運(yùn)行期間拋出異常;出現(xiàn)此類異常,通常是代碼的問題,所以需要修改程序避免這類異常。常見的運(yùn)行時(shí)異常,比如:NullPointerException、ClassCastException 等等。

CheckedException:檢查異常,這種異常發(fā)生在編譯階段,Java 編譯器會(huì)強(qiáng)制代碼去捕獲和處理此類異常;比如:ClassNotFoundException、IllegalAccessException 等等。

二、異常的處理方法

捕獲異常使用 try...catch 語句,把可能發(fā)生異常的代碼放到 try {...} 中,然后使用catch 捕獲對(duì)應(yīng)的異常;我們也可以在代碼塊中使用Throw向上級(jí)代碼拋出異常;在方法中使用 throws 關(guān)鍵字,向上級(jí)代碼拋出異常;

三、Throw和throws的區(qū)別

Throw在方法內(nèi),后面跟著異常對(duì)象;而throws是用在方法上,后面跟異常類;

Throw會(huì)拋出具體的異常對(duì)象,當(dāng)執(zhí)行到Throw的時(shí)候,方法內(nèi)的代碼也就執(zhí)行結(jié)束了;throws用來聲明異常,提醒調(diào)用方這個(gè)方法可能會(huì)出現(xiàn)這種異常,請(qǐng)做好處理的準(zhǔn)備,但是不一定會(huì)真的出現(xiàn)異常。

四、使用Exception的一些建議

1. 不要試圖通過異常來控制程序流程,比如開發(fā)一個(gè)接口,正確的做法是對(duì)入?yún)⑦M(jìn)行非空驗(yàn)證,當(dāng)參數(shù)為空的時(shí)候返回“參數(shù)不允許為空”,而不應(yīng)該捕捉到空指針的時(shí)候返回錯(cuò)誤提示。

2. 僅捕獲有必要的代碼,盡量不要用一個(gè)try...catch 包住大段甚至整個(gè)方法內(nèi)所有的代碼,因?yàn)檫@樣會(huì)影響JVM對(duì)代碼進(jìn)行優(yōu)化,從而帶來額外的性能開銷。

3. 很多程序員喜歡catch(Exception e),其實(shí)應(yīng)該盡可能地精確地指出是什么異常。

4. 不要忽略異常,捕捉到異常之后千萬不能什么也不做,要么在catch{...}中輸出異常信息,要么通過Throw或throws拋出異常,讓上層代碼處理。

5. 盡量不要在catch{...}中輸出異常后,又向上層代碼拋出異常,因?yàn)檫@樣會(huì)輸出多條異常信息,而且它們還是相同的,這樣可能會(huì)產(chǎn)生誤導(dǎo)。

6. 不要在finally{...}中寫return,因?yàn)閠ry{...} 在執(zhí)行return之前執(zhí)行 finally{...} ,如果 finally{...}中有return,那么將不再執(zhí)行try{...}中的return。

感謝各位的閱讀,以上就是“Java處理異常的方法有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Java處理異常的方法有哪些這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!


分享標(biāo)題:Java處理異常的方法有哪些
當(dāng)前路徑:http://weahome.cn/article/igdsgj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部