方法內(nèi)的異常被throw,方法還需要throws嗎?
這里是兩張圖,第一張是創(chuàng)建方法m,第二張是創(chuàng)建TestEx類的對(duì)象te,用te調(diào)用m.
請(qǐng)問(wèn),方法m需要用throws拋出了,我感覺(jué)寫不寫沒(méi)區(qū)別。
這里是兩張圖,第一張是創(chuàng)建方法m,第二張是創(chuàng)建TestEx類的對(duì)象te,用te調(diào)用m.
請(qǐng)問(wèn),方法m需要用throws拋出了,我感覺(jué)寫不寫沒(méi)區(qū)別。
2017-01-04
舉報(bào)
2019-10-29
如果只在方法內(nèi)部throw,而不在方法聲明處throws,這種情況下,發(fā)生異常即拋出異常,終止程序。
如果在方法聲明處throws,發(fā)生異常可以拋出到方法外,交給調(diào)用者來(lái)處理,調(diào)用者可以決定是throw還是try/catch。
2018-12-23
我也試了,寫不寫作用好像是沒(méi)啥區(qū)別,可能是為了程序的可讀性????我不懂,我的猜測(cè)。。
2017-01-04
throws?后可以跟多個(gè)異常(復(fù)數(shù)形式)
throw??后只能跟一個(gè)異常
一個(gè)方法可能引發(fā)一個(gè)異常而它自己又沒(méi)有處理,那么應(yīng)該指明異常,讓其他調(diào)
用者來(lái)處理這個(gè)異常,Throws關(guān)鍵字可用來(lái)指明方法中可能引發(fā)的所有異常。對(duì)于
大多數(shù)的Exception子類,Java編譯器要求指明方法引發(fā)的異常類型。但如果異常
的類型為Error和RuntimeException或他們的子類,這條規(guī)則就不適用了。因?yàn)樗?br />
們不是程序正常執(zhí)行時(shí)所能引發(fā)的。
2017-01-04
throws是拋出異常的類型
2017-01-04
方法中的throws只是拋出異常的聲明,它并不代表已經(jīng)拋出異常了