在編程中,我們或多或少的會遇到一些程序異常的情況,為了不影響程序的正常執(zhí)行,我們需要在程序發(fā)生異常的情況下,進行一些操作來防止造成更大的損失。例如在我們平時的除法運算中,被除數(shù)是不能為0的,如果為0就會造成異常,同樣在計算機程序中,如果除以一個為0的數(shù)字,那么這個語句就會是一個錯誤的語句,這樣就會造成程序異常,后面的程序就會執(zhí)行不下去,所以Java使用異常機制可以處理這樣的情況,在出現(xiàn)這種情況之后,把這個異常捕獲進行處理,從而不會影響后面的程序。
在Java中使用try{可能發(fā)生異常的程序模塊}catch(Exception e){} finally{} 的語法規(guī)范來進行異常的處理,將可能發(fā)生異常的地方放入到try的模塊中,當模塊中的語句確實發(fā)生了異常之后,就會被后面的catch進行捕獲,然后我們可以在catch模塊中進行異常的處理,處理完成之后,程序會繼續(xù)往下進行,不會影響到后面的處理。
有時候在我們捕獲了異常之后,由于try里面的異常語句之后還有其他的語句需要執(zhí)行,比如我們開始打開了文件,但是在讀取文件的時候發(fā)生了異常,但是我們需要在最后將文件關(guān)閉,否則文件就會被一直占用,這時候我們可以在finall模塊中將文件進行關(guān)閉。
在Java中有一類異常叫做運行時異常(RuntimeException),這類異常情況我們可以不強制使用try catch進行捕獲程序也可以編譯執(zhí)行,比如空指針異;蛘邤(shù)組越界的異常,這種情況,如果在程序沒有遇到這種情況的時候,程序正常執(zhí)行,但是當程序遇到這些情況,程序就會報錯了。還有另一類的異常非運行時異常,這類異常需要我們進行try catch進行捕獲處理,否則的話程序不可編譯,在編譯的時候就會報錯,例如文件操作的時候,就屬于這類的異常。
在我們編碼的過程中,有時候不想在當前模塊或者方法里面處理異常,則我們可以將異常往上拋,也就是將異常拋給調(diào)用我們這個方法的那個模塊,在那個模塊中進行異常的處理,我們可以使用關(guān)鍵字throws關(guān)鍵字將異常拋給上一級,基本的語法格式是:public void fun() throws IOException {},這樣我們就不需要強制在當前方法中進行try catch處理。
>>本文地址:http://hqfphsz.com/zhuanye/2020/48459.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?