拋出語法:拋出
在方法聲明中,添加throws子句意味著該方法將引發異常。如果壹個方法有異常,但是妳不想處理它,就在方法名後面用throws,這樣異常就會被拋出,無論是誰調用這個方法都要處理它,或者繼續拋出。
拋出語法:[]& lt;返回值類型> & lt方法名>([& lt;參數列表>])[throws & lt;異常類>;]
其中,可以聲明多個異常類,用逗號分隔。
區別2: throw要麽與try-catch-finally語句壹起使用,要麽與throws壹起使用。但是拋出可以單獨使用,然後由處理異常的方法捕獲。
聯系人1:嘗試....catch是在try中捕捉異常並處理它;Catch就是捕捉異常。也就是說壹個操作可能會拋出什麽異常。Throw就是拋出壹個異常而不處理它。
當調用壹個拋出異常的方法(在定義方法時可以通過throws實現)時,需要把這個方法放到壹個try中,然後使用catch破解這個異常,並進行相應的處理。
Thrownnewexception()拋出壹個異常,其他方法會破解它。
也就是說,嘗試....catch用來破解別人的異常,throw拋出異常讓別人來破解。
公共void輸入()引發異常
{ }
公共void輸出異常()
{
嘗試{
input();
}
捕捉(例外e)
{
System.out.println("異常");
}
}
簡單地說,如果throws被用在壹個方法中,那麽這個方法將向上拋出壹個異常,所以當調用這個方法時,妳必須把這個調用放在壹個try中...catch塊來處理此異常。
有兩種方法處理異常。
1,要麽聲明壹個異常,即add throws exceptionname,...在方法名之後,方法本身只是拋出壹個異常,函數調用者捕捉異常。如果生成了異常,該異常將在調用堆棧中下移,直到找到匹配的處理方法。如果它到達調用堆棧的底部,程序將被終止。
2.要麽捕捉異常。通過try catch方法,處理異常的語句被放在catch子句中。
聯系2:用try{}包裝將要拋出的程序塊,然後用catch捕捉異常,用catch處理異常。如果try中有異常,程序會不間斷地執行catch。通常這兩個是壹起用的。如果妳不想因為程序出錯拋出很多異常,可以試試程序。Try和catch只能得到程序運行時引發的異常,而throw語句可以引發明確的異常,程序會在throw語句後立即停止,不會執行後面的程序。
可能在編程的過程中,妳會意識到這裏有壹個錯誤,但是不知道會拋出什麽異常,這也是壹個很頭疼的問題。現對這壹部分總結如下:
算術異常類:Arithmetic exception
nullpointerexception類:NullPointerException
類型轉換異常:ClassCastException
數組負下標異常:NegativeArrayException
數組下標越界異常:ArrayIndexOutOfBoundsException
違反安全原則的異常:SecturityException
文件結束異常:EOFException
文件中未找到異常:FileNotFoundException。
字符串轉換為數字異常:NumberFormatException
操作數據庫異常:SQLException
輸入/輸出異常:IOException
該方法未發現異常:NoSuchMethodException。