人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

Java 異常處理6

Java 異常處理6

更新時間:2022-07-29 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

“throw”語句

  所有的方法都使用“throw”語句來拋出一個異常。Throw語句需要一個單獨throwable對象,這個對象是任意Throwable類的子類。如下類所示:

   throw someThrowableObject;
   讓我們在程序的上下文中來看一下throw語句。下面的pop方法把來自于一個公共堆棧中的一個執(zhí)行類給刪除。這個方法從堆棧上面的元素,并且返回被刪除的對象。

   public Object pop() throws EmptyStackException {
   Object obj;
   if (size == 0) {
   throw new EmptyStackException();
   }
   obj = objectAt(SIZE - 1);
   setObjectAt(SIZE - 1, null);
   size--;
   return obj;
   }
   pop方法檢查堆棧上是否有元素。如果堆棧是空的(也就是說它的尺寸等于0),pop方法就會實例化一個新的EmptyStackException對象(它是java.util中的一個成員),并且拋出它。在這章的后面一節(jié)會解釋怎樣創(chuàng)建自己的異常類。對于現(xiàn)在,你所需要記住的是你只能拋出繼承于java.lang.Throwable類的對象。

   注意,pop方法的聲明中包含了一個throws子句。EmptyStackException是一個檢查性異常,并且pop方法沒有捕捉這個異常。因此,這個方法必須使用throws子名來聲明它所拋出的異常的類型。

   Throwable 類和它的子類
   繼承Throwable類的對象包括直接子類(直接繼承于Throwable類的對象)和間接子類(繼承于Throwable類的子類的對象)。下圖說明了Throwable類的層次關(guān)系和最主要的一些子類。象你看到的一樣,Throws有兩個直接的子類:Error類和Exception類。

   Error類
   當(dāng)在Java虛擬機中發(fā)生動態(tài)連接失敗或其它的定位失敗的時候,Java虛擬機拋出一個Error對象。典型的簡易程序不捕獲或拋出Errors對象。

   Exception類
   大多數(shù)程序都拋出或捕獲衍生于Exception類的對象。一個異常表明發(fā)生了一個問題,但它不是嚴重的系統(tǒng)問題。你編定的大多數(shù)程序?qū)䲣伋龌虿东@Exceptions對象(而不是Errors對象)。

   在Java平臺中Exception類有許多已經(jīng)定義了的子類。這些子類說明所發(fā)生的異常的各種類型。例如,IllegalAccessException異常類說明了不能找到一個特殊的方法;NegativeArraySizeException異常類說明程序試圖創(chuàng)建一個帶有負尺寸的數(shù)組。

   有一個特殊的Exception子類:RuntimeException。這個子類是在程序運行期間在Java虛擬機內(nèi)部所發(fā)生的異常。例如NullPointerException類就是一個運行時異常類,在一個方法試圖通過一個null引用來訪問一個對象的成員時會發(fā)生這個異常。在Unchecked Exceptions---The Controversy這一節(jié)中,我們會討論為什么典型的程序不應(yīng)該拋出運行時異常或RuntimException類的子類異常對象。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 兰州市| 邢台市| 顺平县| 新密市| 广元市| 肃北| 静乐县| 新巴尔虎左旗| 富民县| 灵山县| 南丰县| 蚌埠市| 泽州县| 广安市| 台安县| 彝良县| 扬中市| 陕西省| 龙江县| 九寨沟县| 桐乡市| 高密市| 云龙县| 和田市| 宁国市| 中山市| 和林格尔县| 忻州市| 双辽市| 托克托县| 平乡县| 兰坪| 宁安市| 灌南县| 鹤山市| 汝州市| 鹤岗市| 平南县| 宾川县| 甘南县| 丰都县|