Java中的異常Exception與處理方式詳解
一. 五種異常
在異常Exception父類下有5個子類異常:
1.空指針異常NullPointerException
String name = null;
try {
System.out.println(name.length());//空指針異常
} catch (Exception e) {
e.printStackTrace();
}
2.轉(zhuǎn)型異常ClassCastException
例如:沒有繼承關(guān)系不能向下轉(zhuǎn)型,否則~
3.數(shù)組越界異常ArrayIndexOutOfBoundsException 4.編譯異常
還沒運行就已經(jīng)有錯誤,比如口沒對好。
5.運行異常
語法上沒什么問題,但運行起來會出問題,比如除以0。
注意:編譯異常必須解決,運行異常不需要顯式處理。
二. 異常如何處理(拋出)
方法1: try—catch
希望出現(xiàn)異常后程序繼續(xù)運行,則在選中語句后,采用:
ctrl+alt+t,選擇try-catch即可。
方法2: throw
在出現(xiàn)異常的條件下的方法體內(nèi)直接throw出異常:執(zhí)行throw則一定拋出了異常
可以理解為,在編程之前就預(yù)想到可能發(fā)生的異常,那么:
if(預(yù)想的異常情況出現(xiàn)){ throw new 相應(yīng)的異常();//可以是自定義的異常} //還可以在括號內(nèi)寫上出現(xiàn)異常時的”輸出語句“
即:既要 發(fā)現(xiàn) 異常,又要 處理 異常。
另外:這種具有針對性的聲明只能拋出單個異常
方法3: throws
與throw方法不同,throws跟在方法聲明后面,扔出使用此方法可能發(fā)生(或者在定義可能出現(xiàn)異常的變量的當前類后面throws出異常)的異常。
其只是發(fā)現(xiàn)異常,而不處理,交給方法的調(diào)用者來處。
并且一次可以拋出多個異常。
例如:
public static void method() throws ArithmeticException,Exception{
...;
}三. 自定義異常
創(chuàng)建一個自己命名的class來繼承運行異常RuntimeException
然后結(jié)合throw,就可以扔出這個自己命名類的異常了。

到此這篇關(guān)于Java中的異常Exception與處理方式詳解的文章就介紹到這了,更多相關(guān)Java的異常Exception內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳細聊聊Spring MVC重定向與轉(zhuǎn)發(fā)
大家應(yīng)該都知道請求重定向和請求轉(zhuǎn)發(fā)都是web開發(fā)中資源跳轉(zhuǎn)的方式,這篇文章主要給大家介紹了關(guān)于Spring MVC重定向與轉(zhuǎn)發(fā)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2021-09-09
Springboot項目Mybatis升級為Mybatis-Plus的詳細步驟
在許多 Java 項目中,MyBatis 是一個廣泛使用的 ORM 框架,然而,隨著 MyBatis-Plus 的出現(xiàn),許多開發(fā)者開始遷移到這個更加簡潔、高效的工具,它在 MyBatis 的基礎(chǔ)上提供了更多的功能,所以本文將介紹Springboot項目Mybatis升級為Mybatis-Plus的詳細步驟2025-03-03
springboot?vue項目管理前后端實現(xiàn)編輯功能
這篇文章主要為大家介紹了springboot?vue項目管理前后端實現(xiàn)編輯功能,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05
java項目啟動異常Command line is too long問題及解決
Java Spring項目啟動時報錯“Command line is too long”,可以通過修改項目配置或在IDEA的workspace.xml文件中添加相關(guān)設(shè)置來解決2025-12-12
Mybatis傳遞多個參數(shù)的三種實現(xiàn)方法
這篇文章主要介紹了Mybatis傳遞多個參數(shù)的三種實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04
java的Jackson將json字符串轉(zhuǎn)換成泛型List
這篇文章主要介紹了java的Jackson將json字符串轉(zhuǎn)換成泛型List ,這里整理了詳細的代碼,有需要的小伙伴可以參考下。2017-02-02

