java異常處理的簡(jiǎn)單練習(xí)
異常的練習(xí):
老師用電腦上課。
開始思考上課中出現(xiàn)的問(wèn)題。
比如問(wèn)題是
電腦藍(lán)屏。
電腦冒煙。
要對(duì)問(wèn)題進(jìn)行描述,封裝成對(duì)象。
可是當(dāng)冒煙發(fā)生后,出現(xiàn)講課進(jìn)度無(wú)法繼續(xù)。
出現(xiàn)了講師的問(wèn)題:課時(shí)計(jì)劃無(wú)法完成。
class Teacher { private Computer cmp; public void shangKe()throws NoPlanException /*聲明異常*/ { cmp=new Computer(); try { cmp.run(); } catch(LanPingException e) /*電腦捕獲處理藍(lán)屏的異常*/ { cmp.recst(); } catch(MaoYanException e) /*電腦捕獲處理電腦冒煙的異常*/ { throw new NoPlanException("上課無(wú)法繼續(xù),因?yàn)?+e.getMessage()); /*電腦無(wú)法處理這個(gè)異常,繼續(xù)把這個(gè)異常拋給老師來(lái)處理*/ } System.out.println("老師上課"); /*沒有異常,老師就正常上課*/ } } class LanPingException extends Exception /*自定義藍(lán)屏異常*/ { LanPingException(String m) { super(m); } } class MaoYanException extends Exception /*自定義電腦冒煙異常*/ { MaoYanException(String m) { super(m); } } class NoPlanException extends Exception /*自定義老師處理異常*/ { NoPlanException(String m) { super(m); } } class Computer { private int state=3; /*不同的異常狀態(tài)選擇*/ public void run()throws LanPingException,MaoYanException { if(state==2) { throw new LanPingException("電腦藍(lán)屏了"); /*符合條件就拋出異常對(duì)象*/ } if(state==3) { throw new MaoYanException("電腦冒煙了"); } System.out.println("電腦運(yùn)行"); } public void recst() { System.out.println("電腦重啟"); } } class ExceptionText { public static void main(String args[]) { Teacher t=new Teacher(); try { t.shangKe(); } catch(NoPlanException e) /*老師捕獲處理電腦冒煙異常*/ { System.out.println(e.toString()); } } }
運(yùn)行結(jié)果:
NoPlanException: 上課無(wú)法繼續(xù),因?yàn)殡娔X冒煙了
以上這篇java異常處理的簡(jiǎn)單練習(xí)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解SpringBoot構(gòu)建Docker鏡像的3種方式
這篇文章主要介紹了SpringBoot構(gòu)建Docker鏡像的3種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06JAVA錯(cuò)誤:'無(wú)效目標(biāo)發(fā)行版?17'的解決方案
這篇文章主要給大家介紹了關(guān)于JAVA錯(cuò)誤:'無(wú)效目標(biāo)發(fā)行版?17'的解決方案,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或使用java具有一的的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-09-09JavaGUI事件監(jiān)聽機(jī)制超詳細(xì)講解
Java事件監(jiān)聽器是由事件類和監(jiān)聽接口組成,自定義一個(gè)事件前,必須提供一個(gè)事件的監(jiān)聽接口以及一個(gè)事件類。JAVA中監(jiān)聽接口是繼承java.util.EventListener的類,事件類繼承java.util.EventObject的類2023-03-03SpringBoot之自定義Filter獲取請(qǐng)求參數(shù)與響應(yīng)結(jié)果案例詳解
這篇文章主要介紹了SpringBoot之自定義Filter獲取請(qǐng)求參數(shù)與響應(yīng)結(jié)果案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-09-09Spring Boot整合web層實(shí)現(xiàn)過(guò)程詳解
這篇文章主要介紹了Spring Boot整合web層實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04Java 策略模式與模板方法模式相關(guān)總結(jié)
這篇文章主要介紹了Java 策略模式與模板方法模式相關(guān)總結(jié),幫助大家更好的理解和使用Java,感興趣的朋友可以了解下2021-01-01Sonar編譯問(wèn)題對(duì)應(yīng):File [...] can''t be indexed twice.
今天小編就為大家分享一篇關(guān)于Sonar編譯問(wèn)題對(duì)應(yīng):File [...] can't be indexed twice.,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12Java監(jiān)聽器三種實(shí)現(xiàn)方法代碼解析
這篇文章主要介紹了Java監(jiān)聽器三種實(shí)現(xiàn)方法代碼解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08java注解的類型知識(shí)點(diǎn)總結(jié)
在本篇文章里小編給大家整理了一篇關(guān)于java注解的類型知識(shí)點(diǎn)總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-03-03