Java基礎之異常(簡單易懂)

異常

1.JAVA異常體系

(1)Throwable類(表示可拋)是所有異常和錯誤的超類,兩個直接子類為Error和Exception,分別表示錯誤和異常;其中異常類Exception又分為運行時異常和非運行時異常,這兩個異常有很大區別,運行時異常也叫非受檢異常;非運行時異常也叫受檢異常
(2)Error是程序無法處理的錯誤,它是由J八VM產生和拋出的,比如OutofMemoryError、ThreadDeath等,這些異常發生時,一般會選擇線程終止
(3)Exception是程序本身可以處理的異常,對于這類異常,程序應當盡可能去處理
(4)運行時異常都是RuntimeException類以及其子類異常,比如NullPointerException、ArraylndexOutofBoundsException等,這些異常也是不接受檢查異常,程序可以選擇處理,也可以選擇不處理,這類異常一般由程序邏輯錯誤引起,程序應該從邏輯角度盡可能避免這類異常的發生
(5)非運行時異常都是除RuntimeException類以及其子類異常之外的類,這些類都屬于Exception關,都是要接受檢查的異常,比如IOException、sQLException,從程序語法角度是這類異常是必須要進行處理的異常,如果不處理,程序就不能編譯通過

?2.異常處理方式以及差別

(1)try catch處理方式,如果try代碼塊中的代碼運行出現錯誤,那么catch代碼塊中的代碼執行,但不影響后邊代碼運行

(2)throws處理方式向外拋出異常,讓之后一個接收到該異常的方法去處理

3.try-catch代碼塊
try{可能出現異常的代碼
}catch(異常類型){當產生對應異常類型時,會執行catch中代碼
}finally{無論如何都會執行的代碼
}
4.try-catch的使用

(1)try、catch、finally三個語句均不能單獨使用,三者可以組成,try...catch、try..finally、try ...catch....finally三種結構,其中catch可以有多個, finally語句最多一個
(2)try,catch、finally三個代碼塊中變量的作用域為代碼內部,分別獨立而不能相互訪問,如果要在三個塊中使用,則需要把變量定義到這些塊之外
(3)多個catch塊,最多只會匹配其中一個異常類且只會執行該catch塊代碼,而不會再執行其他catch塊代碼,且匹配catch語句的順序是從上到下,也可能所有的catch塊都不執行
(4)先catch子類異常再catch父類異常
(5)finally語句是無論try中有沒有發生異常,都會執行的語句塊,一般finally是程序提供的一個統一的出口,保證程序轉到其他部分繼續執行,finally通常做一些清除工作,如關閉文件,關閉資源等

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/14752.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/14752.shtml
英文地址,請注明出處:http://en.pswp.cn/web/14752.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

代碼隨想錄算法訓練營第三十一天| 貪心算法理論基礎、LeetCode455.分發餅干、LeetCode376. 擺動序列 、LeetCode53. 最大子序和

貪心算法理論基礎: 貪心算法沒有類似遞歸、回溯的套路。主要的思想可以理解為:用局部最優找全局最優。 #LeetCode 455. Assign Cookies #LeetCode 455. 視頻講解:貪心算法,你想先喂哪個小孩?| LeetCode:4…

魯教版六年級數學下冊-筆記

文章目錄 第五章 基本平面圖形1 線段、射線、直線2 比較線段的長短3 角4 角的比較5 多邊形和圓的初步認識第六章 整式的乘除1 同底數冪的乘法2 冪的乘方與積的乘方3 同底數冪的除法4 零指數冪與負整數指數冪5 整式的乘法6 平方差公式7 完全平方公式8 整式的除法 第七章 相交線與…

全域運營是割韭菜嗎?常見套路有哪些?

隨著全域運營賽道的全面開啟,全域運營服務商和全域運營系統的數量迅速增加,持續激發賽道活力的同時,也讓一些試圖用全域運營割韭菜的人有了可趁之機。 值得慶幸的是,由于當前全域運營賽道剛興起不久,因此,割…

Python | Leetcode Python題解之第110題平衡二叉樹

題目: 題解: class Solution:def isBalanced(self, root: TreeNode) -> bool:def height(root: TreeNode) -> int:if not root:return 0leftHeight height(root.left)rightHeight height(root.right)if leftHeight -1 or rightHeight -1 or a…

C++青少年簡明教程:If選擇語句

C青少年簡明教程:If選擇語句 C中選擇語句的語法是: if (條件) { 條件成立時需要執行的語句... } [else { 條件不成立時需要執行的語句... }] 說明: if后面使用一個括號,括號里是條件——關系表達式。 所謂的關系表達式就是判…

5.24學習記錄

[FSCTF 2023]ez_php2 比較簡單的pop鏈 <?php highlight_file(__file__); Class Rd{public $ending;public $cl;public $poc;public function __destruct(){echo "All matters have concluded";die($this->ending);}public function __call($name, $arg){for…

E1載波:一種2.048Mbps速率的PCM載波

E1載波的基本幀由32個子信道組成 幀長為256個bit,分為32個相等時隙&#xff0c;一個時隙為8個bit。256/328 時隙的編號為CH0~CH31 全幀包含256位,且每一幀用 125us時間傳送 E1載波支持的數據傳輸效率為2.048Mbps&#xff0c;用PCM編碼&#xff08;即 256bit/125us2.048Mbps…

Android 一個activity對應多個window

Android 一個activity對應多個window Android Activity 對應多個Window&#xff0c;Activity是應用程序的重要組成部分&#xff0c;在程序中的一個屏幕界面&#xff0c;用戶可以進行交互操作。在Android應用程序中&#xff0c;Activity對應著一個Window&#xff0c;一個Activi…

微信小程序源碼-基于Java后端的小區租拼車管理信息系統畢業設計(附源碼+演示錄像+LW)

大家好&#xff01;我是程序員一帆&#xff0c;感謝您閱讀本文&#xff0c;歡迎一鍵三連哦。 &#x1f49e;當前專欄&#xff1a;微信小程序畢業設計 精彩專欄推薦&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python畢業設…

洗完咖啡杯的最早時間

題目描述&#xff1a;給定一個數組arr&#xff0c;arr[i]代表第i號咖啡機泡一杯咖啡的時間&#xff0c;給定一個正數N&#xff0c;表示N個人在等著咖啡機&#xff0c;每臺咖啡機只能一個一個的泡咖啡&#xff0c;其次&#xff0c;只有一臺咖啡機可以洗杯子&#xff0c;一次只能…

1.OLED

1.基礎知識

kotlin重復類編譯報錯解決

Duplicate class org.jetbrains.annotations.TestOnly found in modules annotations-12.0 (com.intellij:annotations:12.0) and annotations-13.0 (org.jetbrains:annotations:13.0) Go to the documentation to learn how to <a href"d.android.com/r/tools 參考鏈…

網絡拓撲—DHCP服務配置

文章目錄 DHCP服務搭建相關配置細節前提安裝DHCP服務 DHCP服務搭建 相關配置細節前提 系統&#xff1a;Windows Server 2003 IP網段&#xff1a;10.0.0.0/24 三臺機子&#xff1a; 普通PC機 DHCP服務器 路由器&#xff08;兩塊網卡&#xff0c;連接內外網&#xff09; //注…

覆蓋索引與復合索引 小記

表 t_1 有一個復合索引 (user_id,create_time) 執行以下SQL SELECT COUNT(1) FROM t_1 WHERE create_time > 2024-01-10 AND create_time < 2024-05-25 ;看似不滿足復合索引最左前綴的條件,但依然會使用復合索引(user_id,create_time), 滿足覆蓋索引. 但如果是執行以…

【Unity】Unity項目轉抖音小游戲(三)資源分包,抖音云CDN

業務需求&#xff0c;開始接觸一下抖音小游戲相關的內容&#xff0c;開發過程中記錄一下流程。 使用資源分包可以優化游戲啟動速度&#xff0c;是抖音小游戲推薦的一種方式&#xff0c;抖音云也提供存放資源的CDN服務 抖音云官方文檔&#xff1a;https://developer.open-douyi…

基于灰狼優化算法優化支持向量機(GWO-SVM)時序預測

代碼原理及流程 基于灰狼優化算法優化支持向量機&#xff08;GWO-SVM&#xff09;的時序預測代碼的原理和流程如下&#xff1a; 1. **數據準備**&#xff1a;準備時序預測的數據集&#xff0c;將數據集按照時間順序劃分為訓練集和測試集。 2. **初始化灰狼群體和SVM模型參數…

LeetCode 47.全排列 II

LeetCode 47.全排列 II 1、題目 題目鏈接&#xff1a;47. 全排列 II 給定一個可包含重復數字的序列 nums &#xff0c;按任意順序 返回所有不重復的全排列。 示例 1&#xff1a; 輸入&#xff1a;nums [1,1,2] 輸出&#xff1a; [[1,1,2],[1,2,1],[2,1,1]]示例 2&#xff…

《基于Jmeter的性能測試框架搭建》改進一

《基于Jmeter的性能測試框架搭建》文末筆者提到了不少待改進之處&#xff0c;如下所示。 Grafana性能圖表實時展現&#xff0c;測試過程中需實時截圖形成測試報告&#xff0c;不夠人性化。解決方案&#xff1a;自動生成測試報告并郵件通知。 Grafana性能圖表需測試人員實時監控…

Big Demo Day第十三期活動即將啟幕,Web3創新項目精彩紛呈,PEPE大獎等你抽取

5月28號在香港數碼港 Big Demo Day第十三期 活動即將拉開帷幕&#xff0c;活動將匯集眾多Web3領域的創新項目&#xff0c;為參會者帶來一場科技與智慧交融的盛宴。在這里&#xff0c;你不僅能深入了解區塊鏈、AI等前沿技術的最新應用&#xff0c;還能有機會贏取豐厚的PEPE大獎。…

免費wordpress中文主題

免費大圖wordpress主題 首頁是一張大圖的免費wordpress主題模板。簡潔實用&#xff0c;易上手。 https://www.jianzhanpress.com/?p5857 免費WP模板下載 頂部左側導航條的免費WP模板&#xff0c;后臺簡潔&#xff0c;新手也可以下載使用。 https://www.jianzhanpress.com/…