国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Java > 正文

java異常分類

2019-11-11 06:48:26
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

異常類結(jié)構(gòu)

異常結(jié)構(gòu)示意圖

Throwable 是java 語(yǔ)言中所有Error或Exception的超類。只有當(dāng)對(duì)象是此類或其子類的實(shí)例時(shí),才能通過(guò) Java 虛擬機(jī)或者 Java throw 語(yǔ)句拋出。類似地,只有此類或其子類才可以是 catch 子句中的參數(shù)類型。

Error 是 Throwable 的子類,一般是指與虛擬機(jī)相關(guān)的問(wèn)題,如系統(tǒng)崩潰,虛擬機(jī)錯(cuò)誤,內(nèi)存空間不足,方法調(diào)用棧溢等。對(duì)于Error, 程序應(yīng)當(dāng)終止。

Exception代表程序可以處理的異常。

異常分類

在java中,根據(jù)在編譯時(shí)是否要求異常被強(qiáng)制檢查來(lái)將異常分成兩類,Unchecked異常和Checked異常。

編譯器強(qiáng)制Checked異常必須使用try..catch處理或用throws聲明繼續(xù)拋給上層調(diào)用方法處理,而對(duì)于Unchecked異常,編譯器則不做要求,默認(rèn)情況下會(huì)自動(dòng)得到處理,所以可以作處理也可以不處理。

Error及其衍生類和RuntimeException及其衍生類屬于Unchecked異常,其它的異常均為Checked異常,需要注意Throwable本身也屬于Checked異常。

所以,當(dāng)我們需要自定義一個(gè)異常且不需要對(duì)它進(jìn)行處理的時(shí)候可以選擇繼承RuntimeException.

示例

在下例中,Error和RuntimeException是Unchecked異常,所以不進(jìn)行try…catch或throws也編譯正確,但Exception是Checked異常,所以如果不進(jìn)行處理,就編譯錯(cuò)誤。

public void f1() { throw new Error();//編譯正確}public void f2() { throw new RuntimeException();//編譯正確}public void f3() { throw new Exception();//編譯錯(cuò)誤}public void f4() { try { throw new Exception();//編譯正確 } catch (Exception e) { ... }}public void f5()throws Exception { throw new Exception();//編譯正確}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 微山县| 商河县| 潮安县| 桂林市| 德令哈市| 河间市| 大田县| 抚宁县| 河池市| 临西县| 广饶县| 涞源县| 甘洛县| 高雄县| 富锦市| 将乐县| 呼伦贝尔市| 辽阳市| 宜兰市| 和平区| 石景山区| 津南区| 阳江市| 萝北县| 隆昌县| 方山县| 达日县| 弥渡县| 静安区| 隆子县| 通州区| 清苑县| 赞皇县| 万全县| 富阳市| 盐城市| 满城县| 台前县| 彰武县| 绥宁县| 常州市|