課程
/后端開發(fā)
/Java
/Java入門第三季
test1() 方法有 throws DrunkException,但 test2() 不用,很迷。
2018-08-13
源自:Java入門第三季 1-7
正在回答
在異常的第一節(jié)介紹里面有:異常分為非檢查異常(RuntimeException)和檢查異常。非檢查異常是JVM自動拋出,自動捕獲的。個人理解就是不需要throws聲明的,由jvm自動接管,所以在main方法中不需要捕獲也是可以的(已驗證);當然也不用專門拋出,貼一個運行OK的版本。
阿Dine
呵呵__ 提問者
慕無忌4011151
加油,加油,加油!這個代碼給的太簡單化了有些東西已經寫好了,就像這個si已經上一步new對象的時候出來的,你再用score肯定錯誤
用了 try catch 意味著方法體內的異常會被捕捉并進行一定的處理,所以就不用再聲明throws了
因為他在test2()中解決了這個異常。。。不用拋出讓上一級解決。test1();就是這樣的,他發(fā)現(xiàn)了異常,卻沒有解決,而是用throws聲明了有異常要發(fā)生,但是沒解決,交給了test2()來解決。
查了一下:異常分兩種,一種是可抓可不抓的,一種是必須抓的??勺タ刹蛔サ漠惓>涂梢圆挥脤憈hrows,必須抓的異常那就必須要寫throws了。
throw是拋出異常,將drunk異常拋出,然后在test2中用try-catch捕捉拋出的這個異常,之所以test2不用是因為要捕捉到test1拋出的異常,要像test1一樣拋出的話就沒辦法進行異常處理,捕捉到才能進入異常處理程序
因為它有了try-catch塊.emmm不知道說的對不對.我是這么理解的
舉報
Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧
4 回答test2中throw了一個RunTimeException異常,為什么方法名后面沒有throws聲明
3 回答請問test2() throw 的RuntimeException 為什么不需要test2() throws Exception 聲明拋出異常?
5 回答方法內的異常被throw,方法還需要throws嗎?
10 回答test2方法沒有聲明異常拋出,為什么編譯器還能通過?
1 回答方法拋出異常是不是在方法名后加throws 異常類
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-08-22
在異常的第一節(jié)介紹里面有:異常分為非檢查異常(RuntimeException)和檢查異常。非檢查異常是JVM自動拋出,自動捕獲的。個人理解就是不需要throws聲明的,由jvm自動接管,所以在main方法中不需要捕獲也是可以的(已驗證);當然也不用專門拋出,貼一個運行OK的版本。
2022-03-24
加油,加油,加油!這個代碼給的太簡單化了有些東西已經寫好了,就像這個si已經上一步new對象的時候出來的,你再用score肯定錯誤
2019-01-13
用了 try catch 意味著方法體內的異常會被捕捉并進行一定的處理,所以就不用再聲明throws了
2018-08-20
因為他在test2()中解決了這個異常。。。不用拋出讓上一級解決。test1();就是這樣的,他發(fā)現(xiàn)了異常,卻沒有解決,而是用throws聲明了有異常要發(fā)生,但是沒解決,交給了test2()來解決。
2018-08-13
查了一下:異常分兩種,一種是可抓可不抓的,一種是必須抓的??勺タ刹蛔サ漠惓>涂梢圆挥脤憈hrows,必須抓的異常那就必須要寫throws了。
2018-08-13
throw是拋出異常,將drunk異常拋出,然后在test2中用try-catch捕捉拋出的這個異常,之所以test2不用是因為要捕捉到test1拋出的異常,要像test1一樣拋出的話就沒辦法進行異常處理,捕捉到才能進入異常處理程序
2018-08-13
因為它有了try-catch塊.emmm不知道說的對不對.我是這么理解的