999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java虛擬機(jī)異常類處理機(jī)制研究

2019-09-10 06:25:40金英華孫麗
大眾科學(xué)·中旬 2019年4期

金英華 孫麗

摘 要:程序錯誤包括兩種:語法錯誤(編譯錯誤)和運(yùn)行錯誤(異常)。語法錯誤是指由于輸入程序時(shí)的語句錯誤,導(dǎo)致程序無法通過編譯系統(tǒng)而產(chǎn)生的錯誤。Java語言語法中關(guān)鍵字或者標(biāo)識符要區(qū)分大小寫,以及要正確地輸入Java語句,編寫程序設(shè)計(jì)時(shí)要遵守這些規(guī)則,否則編譯時(shí)就會出現(xiàn)錯誤,需要程序員調(diào)試修正。運(yùn)行錯誤是程序在運(yùn)行過程中產(chǎn)生的錯誤, 數(shù)組下標(biāo)不能越界,除數(shù)不能為零和引用文件無法找到等等,這類錯誤屬于是運(yùn)行錯誤, 異常處理就是針對這些運(yùn)行錯誤進(jìn)行控制和處理的。

關(guān)鍵詞:Java,異常類,Error,Exception

1、異常的定義

就是在程序運(yùn)行時(shí)由代碼所產(chǎn)生的不正常狀態(tài)。換句話來說,異常就是一個運(yùn)行錯誤。

異常處理的關(guān)鍵詞有:try、catch、finally 、throw、throws,共5個。

2、異常的結(jié)構(gòu)

類Thorwable是所有錯誤類(Error)和異常類(Exception)的父類,如圖1所示。

Error類及其子類由Java虛擬機(jī)生成并拋出,由系統(tǒng)接收并處理,程序員無法通過調(diào)整程序代碼來避免這種錯誤,例如,Java虛擬機(jī)運(yùn)行錯誤(Virtual MachineError)和類定義錯誤(NoClassDefFoundError)等。

Exception 類是所有異常類的父類,其子類可分為: RuntimeException和其它型異常。其中,運(yùn)行異常是程序運(yùn)行過程中出現(xiàn)的問題,例如,引用對象為空、除數(shù)為零或數(shù)組越界,則分別引發(fā)運(yùn)行時(shí)異常NullPointerException、ArithmeticException和 ArrayIndexOutOfBoundException。

圖1

3、異常處理的機(jī)制

(1)try...catch關(guān)鍵字

try/catch代碼使用語法如下:

try{

// 程序代碼

}

catch(異常類型1 異常的變量名1)

{

// 程序代碼

}

catch(異常類型2 異常的變量名2)

{

// 程序代碼

}

……

(2)finally關(guān)鍵字

finally 代碼塊出現(xiàn)在 catch 代碼塊最后并且一定處理,語法如下:

try{

// 程序代碼

}

catch(異常類型1 異常的變量名1)

{

// 程序代碼

}

catch(異常類型2 異常的變量名2)

{

// 程序代碼

}

……

Finally

{

// 程序代碼

}

4、異常類的應(yīng)用

本實(shí)例從命令行輸入兩個數(shù),用第一個數(shù)除以第二數(shù),輸出運(yùn)算結(jié)果。如果命令行沒有輸入?yún)?shù)或者參數(shù)不足,則會捕捉ArrayIndexOutOfBoundsException異常;如果輸入的參數(shù)不是數(shù)字,則會捕捉NumberFormatException異常;如果第二個參數(shù)為0,則會捕捉ArithmeticException異常,輸入正確兩個數(shù),則兩個數(shù)相除并打印出相應(yīng)的信息。

行號 lsxc.java

1 public class lsxc

2 {

3 public static void main(String args[])

4 {

5

6 try

7 {

8 double a[]=new double [2];

9 double c;

10 for(int i=0;i<2;i++)

11 a[i]=Double.parseDouble(args[i]);

12 c=a[0]/a[1];

13 System.out.println(c);

14 }

15 catch(ArrayIndexOutOfBoundsException e)

16 {

17 System.out.println("沒有參數(shù)或參數(shù)不足!!!");

18 }

19 catch(NumberFormatException e)

20 {

21 System.out.println("您輸入的不是數(shù)字!!!");

22 }

23 catch(ArithmeticException e)

24 {

25 System.out.println("除數(shù)不能為零!!!");

26 }

27 }

28 }

捕捉ArrayIndexOutOfBoundsException異常的運(yùn)行結(jié)果,如圖2所示。

圖2

5、結(jié)論

Java語言中的異常事件分為兩大類,即Error(錯誤)和Exception(異常)。Exception類中定義了程序可能遇到的很多異常情況,發(fā)生異常情況時(shí),可以編寫代碼處理可能出現(xiàn)的異常情況,而不影響程序的繼續(xù)執(zhí)行。

參考文獻(xiàn)

[1]李卓玲.Java程序設(shè)計(jì)實(shí)用教程.大連理工大學(xué)出版社,2005.

[2] 遲勇.Java語言程序設(shè)計(jì).大連理工大學(xué)出版社,2013.

[3] 遲勇.Java語言程序設(shè)計(jì)實(shí)驗(yàn)及實(shí)訓(xùn)指導(dǎo).大連理工大學(xué)出版社,2013.

主站蜘蛛池模板: A级毛片无码久久精品免费| 91无码视频在线观看| 国产精品嫩草影院视频| 亚洲一区二区三区香蕉| 国产精品午夜福利麻豆| 亚洲欧美精品在线| 亚洲免费播放| 国产色婷婷| 精品1区2区3区| 国产91小视频| 无码一区中文字幕| 国产成人8x视频一区二区| 亚洲国模精品一区| 婷婷成人综合| 成人另类稀缺在线观看| 精品成人免费自拍视频| 日本三级黄在线观看| 精品综合久久久久久97超人该| 高清免费毛片| 久久无码免费束人妻| 色天天综合久久久久综合片| 国产成年无码AⅤ片在线| a级毛片视频免费观看| 麻豆精品在线| 黄片在线永久| 成人一区在线| 欧美特黄一级大黄录像| 国产区精品高清在线观看| 国产精品亚欧美一区二区三区 | 亚洲国产中文在线二区三区免| 亚洲不卡网| 国产毛片高清一级国语| 一区二区无码在线视频| 91在线无码精品秘九色APP| 男女精品视频| 91美女视频在线观看| 国产亚洲精品资源在线26u| 亚洲永久精品ww47国产| 中文字幕人成乱码熟女免费| 亚洲国产日韩视频观看| 中文字幕有乳无码| 成年午夜精品久久精品| 国产精品精品视频| 国产毛片片精品天天看视频| 免费Aⅴ片在线观看蜜芽Tⅴ| 久无码久无码av无码| 波多野结衣无码视频在线观看| 久久99精品久久久大学生| 亚洲精品欧美重口| 亚洲天堂免费在线视频| 国产va在线观看| 国产网站黄| 亚洲三级视频在线观看| 国产精品网址在线观看你懂的| 亚洲国产欧美国产综合久久 | 国产日韩精品一区在线不卡| 国产精品无码制服丝袜| 亚洲欧美不卡视频| 国产精品午夜电影| 久久伊人操| 九色91在线视频| 国产成人乱码一区二区三区在线| 国产打屁股免费区网站| 婷婷五月在线| 2021国产精品自产拍在线| 综合久久五月天| 亚洲欧美不卡| 嫩草在线视频| 久久综合亚洲鲁鲁九月天| 香蕉在线视频网站| 亚洲av综合网| 亚洲一区二区三区国产精华液| 欧类av怡春院| 激情六月丁香婷婷| 亚洲欧美一区二区三区蜜芽| 日本成人一区| 99视频在线免费观看| 午夜欧美理论2019理论| 国产精品流白浆在线观看| 亚洲人成亚洲精品| 免费一级无码在线网站 | 国产乱子伦视频在线播放|