java.lang.exception Java出現(xiàn)RuntimeException?
Java出現(xiàn)RuntimeException?如果一個(gè)新手去軟件公司面試,很有可能會(huì)詢問(wèn)運(yùn)行時(shí)異常和編譯時(shí)異常。這些是基本概念。1. RuntimeException,也稱為運(yùn)行時(shí)異常,表示代碼中存在
Java出現(xiàn)RuntimeException?
如果一個(gè)新手去軟件公司面試,很有可能會(huì)詢問(wèn)運(yùn)行時(shí)異常和編譯時(shí)異常。這些是基本概念。
1. RuntimeException,也稱為運(yùn)行時(shí)異常,表示代碼中存在錯(cuò)誤。例如,您提到的數(shù)組索引越界異常就是越界。這是一個(gè)代碼問(wèn)題。數(shù)組定義的長(zhǎng)度不足以實(shí)際使用。如果你不處理它,你肯定會(huì)報(bào)告一個(gè)錯(cuò)誤。如果你操作一個(gè)模塊,發(fā)現(xiàn)它可以正常運(yùn)行,那只是因?yàn)榇a還沒(méi)有運(yùn)行到現(xiàn)在,它只是在錯(cuò)誤的地方。。一旦控制臺(tái)報(bào)告runtimeException,就必須對(duì)其進(jìn)行處理。。沒(méi)有例外。此外,try-catch無(wú)法解決處理runtimeException的問(wèn)題。。在這里使用try-catch沒(méi)有意義。
2. 運(yùn)行時(shí)異?;蚓幾g時(shí)異常。只有兩種例外。例如,處理文件流時(shí)的I/O問(wèn)題是編譯時(shí)異常。此時(shí),使用thr{}catch捕獲或拋出。
3. 錯(cuò)誤。我不在這里重復(fù)了。根據(jù)實(shí)際開(kāi)發(fā)經(jīng)驗(yàn)總結(jié),純手工攻絲。。
在JAVA中捕獲異常后throw自定義異常是不優(yōu)雅的嗎?
事實(shí)上,這種方法在很多框架中都有使用
1。Rethrow
自定義異常,用于更好地隔離異常,識(shí)別異常類型、ID、自定義消息和日志
2。對(duì)第三方庫(kù)的異常進(jìn)行打包和抽象,以保持與框架異常定義的一致性,方便框架處理不同的異常
3。Restful API,統(tǒng)一異常管理
在Java中通常有兩種方法來(lái)處理異常。一種是通過(guò)拋出異常來(lái)拋出異常。當(dāng)這段代碼出現(xiàn)問(wèn)題時(shí),您不需要自己處理它,而是調(diào)用這段代碼來(lái)處理它。
第二種方法是使用try-catch,即自己處理問(wèn)題