java 異常

java異常
Throwable:
1.Error 錯(cuò)誤
2.Exception 異常

Exception 1.運(yùn)行時(shí)異常
2.編譯時(shí)異常

Throwable 常用的方法
toString() 返回當(dāng)前異常對(duì)象的完整類名
getMessage() 返回詳細(xì)異常消息棋蚌,就是創(chuàng)建Throwable 傳入的字符串
printStackTrace() 打印異常的棧信息
Error 錯(cuò)誤一般是用于JVM或者是硬件引發(fā)的問題丐一,所以我們一般不會(huì)通過代碼去處理錯(cuò)誤
Exception 異常 是需要通過代碼去處理的
如何區(qū)分錯(cuò)誤與異常呢:
如果程序報(bào)錯(cuò)角钩,類名是以Error結(jié)尾的陶舞,那么肯定是一個(gè)錯(cuò)誤当犯,
如果是以Exception結(jié)尾的藏斩,那么肯定就是一個(gè)異常

處理異常
方式1祟绊;
try {
可能發(fā)生的異常的代碼燎竖;
}catch(捕獲異常的類型 變量名){
處理異常代碼
}

捕獲處理要注意的細(xì)節(jié)
1:如果try塊中代碼出了異常經(jīng)過了處理之后璃弄,那么try-catch塊外面的代碼可以正常執(zhí)行
2:如果try塊中出了異常的代碼,那么try塊中出現(xiàn)異常代碼后面的代碼就不會(huì)執(zhí)行了
3:一個(gè)try塊后面是可以跟有多個(gè)catch塊的构回,也就是一個(gè)try塊可以捕獲多種異常的類型
4:一個(gè)try塊可以捕獲多種異常的類型夏块,但是捕獲的異常類型必須從小到大進(jìn)行捕獲,否則編譯報(bào)錯(cuò)
5纤掸;finally代碼塊脐供,最后一定會(huì)執(zhí)行,不管是return借跪,還是什么政己,除非退出jvm
注意:以后捕獲異常不可以都用Exception ,因?yàn)閷?shí)際開發(fā)中遇到不同的異常類型的時(shí)候掏愁,我們會(huì)有不同的處理方式歇由,所以要分開不同的異常類型

處理方式2
拋出異常
throws Exception
拋出異常要注意的細(xì)節(jié)
1,如果一個(gè)方法的內(nèi)部拋出了一個(gè)異常對(duì)象果港,那么必須在方法上聲明拋出沦泌。
2,如果調(diào)用了一個(gè)聲明拋出異常 的方法辛掠,那么調(diào)用者必須要處理異常谢谦。
3,如果一個(gè)方法內(nèi)部拋出了一個(gè)異常對(duì)象萝衩,那么throw語句后面的代碼都不會(huì)在執(zhí)行了回挽。
4,在一種情況下猩谊,只能拋出一種類型 的異常對(duì)象
throw 和throws倆個(gè)關(guān)鍵字區(qū)別:
1千劈,throw關(guān)鍵字是用于方法內(nèi)部的,throws使用方法聲明上的
2牌捷,throw關(guān)鍵字是用于方法內(nèi)部拋出一個(gè)異常對(duì)象的队塘,throws關(guān)鍵字是用于在方法聲明上拋出異常類型的。
3宜鸯,throw關(guān)鍵字后面只能有一個(gè)異常對(duì)象憔古,throws后面一次可以聲明拋出多種類型的異常

throws和try使用時(shí)機(jī),如果你需要通知調(diào)用者淋袖,你代碼出了問題鸿市,那么這時(shí)候就使用拋出異常,如果代碼是直接客戶打交道千萬不能拋出,在拋的話就給用戶了焰情,這時(shí)候就應(yīng)該捕獲的

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末陌凳,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子内舟,更是在濱河造成了極大的恐慌合敦,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件验游,死亡現(xiàn)場(chǎng)離奇詭異充岛,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)耕蝉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門崔梗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人垒在,你說我怎么就攤上這事蒜魄。” “怎么了场躯?”我有些...
    開封第一講書人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵谈为,是天一觀的道長。 經(jīng)常有香客問我踢关,道長峦阁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任耘成,我火速辦了婚禮,結(jié)果婚禮上驹闰,老公的妹妹穿的比我還像新娘瘪菌。我一直安慰自己,他們只是感情好嘹朗,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開白布师妙。 她就那樣靜靜地躺著,像睡著了一般屹培。 火紅的嫁衣襯著肌膚如雪默穴。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評(píng)論 1 290
  • 那天褪秀,我揣著相機(jī)與錄音蓄诽,去河邊找鬼。 笑死媒吗,一個(gè)胖子當(dāng)著我的面吹牛仑氛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼锯岖,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼介袜!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起出吹,我...
    開封第一講書人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤遇伞,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后捶牢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鸠珠,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年叫确,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了跳芳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡竹勉,死狀恐怖飞盆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情次乓,我是刑警寧澤吓歇,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站票腰,受9級(jí)特大地震影響城看,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜杏慰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一测柠、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧缘滥,春花似錦轰胁、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至擎颖,卻和暖如春榛斯,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背搂捧。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來泰國打工驮俗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人允跑。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓意述,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子荤崇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348