異常的練習(xí):
老師用電腦上課。
開始思考上課中出現(xiàn)的問題。
比如問題是
電腦藍(lán)屏。
電腦冒煙。
要對(duì)問題進(jìn)行描述,封裝成對(duì)象。
可是當(dāng)冒煙發(fā)生后,出現(xiàn)講課進(jìn)度無法繼續(xù)。
出現(xiàn)了講師的問題:課時(shí)計(jì)劃無法完成。
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("上課無法繼續(xù),因?yàn)?+e.getMessage()); /*電腦無法處理這個(gè)異常,繼續(xù)把這個(gè)異常拋給老師來處理*/ } 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: 上課無法繼續(xù),因?yàn)殡娔X冒煙了
以上這篇java異常處理的簡(jiǎn)單練習(xí)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選