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

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

Java 異常處理7

Java 異常處理7

更新時間:2022-07-29 文章作者:未知 信息來源:網絡 閱讀次數:

有爭議性的未被檢查的異常

  因為Java編程語言不要求方法一定要捕獲或列出運行異常或錯誤,所以程序員就可能被誤導,編寫只拋出運行時異常或者使所有的異常子類都繼承于RuntimException的代碼,這兩種快捷方式允許程序員編寫不用為編譯錯誤而操心的代碼,并且也不費神去指定或捕獲任何異常。盡管這種方法看上去對程序員很方便,但它回避了捕獲或指定必要的東西的意圖,并且可能使使用你的類的程序員發生錯誤。

   為什么設計者決定強制一個方法指定所有的在它的范圍內可能被拋出的未檢查異常呢?被一個方法拋出的任何異常都是方法公共編程接口的一部分。方法的調用者必須知道有關這個方法所拋出的異常,以便他們能夠針對這些異常決定做什么。這些異常是編寫方法的接口差不多,有它們的參數和返回值。

   接下來你的問題可能是:如果它是這么好的說明了一個方法的API,包括它能拋出的異常,那么為什么不也指定運行時異常呢?運行時異常描述的問題是一個設計問題的結果,并且,API的客戶代碼不能期望從出錯的地方來恢復程序執行或用一些方法來處理它們。這些問題包括算法異常(例如被零除),指針異常(例如通過一個空的引用來訪問一個對象),以及索引異常(例如試圖通過一個越界的索引來訪問一個數組)。運行時異常可能在程序的任何地方發生,并且在一個典型的程序中可能有很多,因此,在每個方法中不得不添加運行異常來降低程序的透明度,這樣,編譯器不要求你指定或捕獲運行時異常(盡管你可以)。

   拋出運行時異常(RuntimeException)的一個公共案例就是在用戶調用了一個錯誤的方法的時候。例如,一個方法檢查它的參數是否有效,如果一個參數是空(null),那么這個方法就可能拋出一個NullPointerException異常,這是一個不檢查異常。

   一般來說,不拋出運行時異常(RuntimeException)或不創建一個運行時異常(RuntimeException)的子類的原因是:人你不想為指定你的方法所能拋出的異常而操心。

   一個使用異常的方針是:如果客戶能夠被期望從一個異常中得到恢復,那么就要使用檢查性異常。如果一個客戶對于從異常中恢復的程序不能做任何事,那么就可以使用不檢查性異常。

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

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 民县| 桦川县| 汾西县| 申扎县| 陇川县| 新竹市| 炎陵县| 西平县| 新兴县| 安龙县| 城固县| 大田县| 福海县| 林州市| 保靖县| 岳池县| 五莲县| 肇庆市| 玉树县| 调兵山市| 天峨县| 扎兰屯市| 丰镇市| 施秉县| 台中市| 铁力市| 彭阳县| 宁蒗| 滁州市| 大足县| 岗巴县| 河北省| 宁都县| 应城市| 东明县| 海门市| 任丘市| 故城县| 石阡县| 抚州市| 灯塔市|