Java后端開發day40--異常File

請添加圖片描述
(以下內容全部來自上述課程)
在這里插入圖片描述
在這里插入圖片描述

異常

異常:異常就是代表程序出現的問題

1. 異常的分類

請添加圖片描述

1.1 Error

代表的是系統級別的錯誤(屬于嚴重問題)
系統一旦出現問題,sun公司會把這些錯誤封裝成Error對象。
Error對象是給sun公司自己用的,不是給我們程序員用的。
因此我們開發人員不用管它。

1.2 Exception

叫做異常,代表程序可能出現的問題。
我們通常把Exception以及它的子類來封裝程序出現的問題。
請添加圖片描述

1.2.1 RuntimeException以及子類

運行時異常:編譯階段不會出現異常提醒。運行時出現的異常。(如:數組索引越界異常)

1.2.2 其他異常

編譯時異常:編譯階段就會出現異常提醒的。(如:日期解析異常)
在編譯階段,必須手動處理,否則代碼報錯。

2.異常的作用

  1. 異常是用來查詢bug的關鍵參考信息
  2. 異常可以作為方法內部的一種特殊返回值,以便通知調用者底層的執行情況

2.1 查詢bug

請添加圖片描述

2.2 特殊返回值

請添加圖片描述
具體演示:
請添加圖片描述
請添加圖片描述
請添加圖片描述

3. 異常的處理方式

3.1 JVM默認的處理方式

  1. 把異常的名稱,異常的原因及異常出現的位置等信息輸出在控制臺
  2. 程序停止執行,異常下面的代碼不會再執行了
    請添加圖片描述

3.2 自己處理(捕獲異常)

try{
可能出現異常的代碼
} catch(異常類名 變量名){
異常的處理代碼;
}

目標:當代碼出現異常時,可以讓程序繼續往下執行。
請添加圖片描述

3.2.1 細節

請添加圖片描述
請添加圖片描述

3.2.2 異常中的常見處理方法

快捷鍵:ctrl+alt+t
請添加圖片描述
最常用:printStackTrace():僅僅是打印信息,不會停止程序運行

3.3 拋出處理(調用者處理)

3.3.1 throws

寫在方法定義處,表示聲明一個異常。
告訴調用者,使用本方法可能會有哪些異常。
請添加圖片描述

3.3.2 throw

寫在方法內,結束方法
手動拋出異常對象,交給調用者(可以try catch進行捕獲)
方法中下面的代碼不再執行了
請添加圖片描述

4. 自定義異常

  1. 定義異常類
  2. 寫繼承關系
  3. 空參構造
  4. 帶參構造

意義:就是為了讓控制臺的報錯信息更加的見名知意
請添加圖片描述

File

  • File對象就表示一個路徑,可以是文件的路徑,也可以是文件夾的路徑
  • 這個路徑可以是存在的,也允許是不存在的

1. 構造方法

請添加圖片描述
請添加圖片描述

2. 成員方法

2.1 判斷、獲取

請添加圖片描述
請添加圖片描述

2.2 創建、刪除

請添加圖片描述
請添加圖片描述
mkdirs:既可以創建單級的,又可以創建多級的文件夾
delete:

  • 如果刪除的是文件,則直接刪,不走回收站
  • 如果刪除的是空文件夾,則直接刪,不走回收站
  • 如果刪除的是有內容的文件夾,則刪除失敗

2.3 獲取、遍歷

請添加圖片描述

2.4 獲取并遍歷(僅藍色需掌握)

請添加圖片描述

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

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

相關文章

算法思想之深度優先搜索(DFS)、遞歸以及案例(最多能得到多少克黃金、精準核酸檢測、最富裕的小家庭)

深度優先搜索(DFS)、遞歸 深度優先搜索(Depth First Search,DFS)是一種用于遍歷或搜索樹或圖的算法。在 DFS 算法中,從起始節點開始,沿著一條路徑盡可能深地訪問節點,直到到達葉子節…

Spark,HDFS客戶端操作

hadoop客戶端環境準備 找到資料包路徑下的Windows依賴文件夾,拷貝hadoop-3.1.0到非中文路徑(比如d:\hadoop-3.1.0) ① 打開環境變量 ② 在下方系統變量中新建HADOOP_HOME環境變量,值就是保存hadoop的目錄。 效果如下: ③ 配置Pa…

共享會議室|物聯網解決方案:打造高效、智能的會議空間!

在數字化轉型的浪潮下,企業、園區、公共機構的會議室面臨諸多痛點,如何通過物聯網技術實現會議室資源的智能調度、環境設備的自動化控制以及用戶體驗的全面升級?本文將結合行業實踐與技術方案,探討基于物聯網的共享會議室解決方案…

ts bug 找不到模塊或相應類型的聲明,@符有紅色波浪線

解決方法&#xff1a;在env.d.ts文件中添加以下代碼&#xff0c;這段代碼是一個 TypeScript 的聲明文件&#xff0c;用于讓 TypeScript 知道如何處理 Vue 單文件組件&#xff08;.vue 文件&#xff09;的導入。 /// <reference types"vite/client" /> // 聲明…

端口隔離基本配置

1.top圖 2.交換機配置 # sysname sw1 # vlan batch 10 # interface GigabitEthernet0/0/1port link-type trunkport trunk allow-pass vlan 10 # interface GigabitEthernet0/0/2port link-type trunkport trunk allow-pass vlan 10sys sw2 # vlan batch 10 # interface Giga…

Android View#post()源碼分析

文章目錄 Android View#post()源碼分析概述onCreate和onResume不能獲取View的寬高post可以獲取View的寬高總結 Android View#post()源碼分析 概述 在 Activity 中&#xff0c;在 onCreate() 和 onResume() 中是無法獲取 View 的寬高&#xff0c;可以通過 View#post() 獲取 Vi…

SecureCrt設置顯示區域橫列數

1. Logical rows //邏輯行調顯示區域高度的 一般超過50就全屏了 2. Logical columns //邏輯列調顯示區域寬度的 3. Scrollback buffer //緩沖區大小

最短路徑-Dijkstra算法板子(java)

自己把Dijkstra的板子整理了一下&#xff0c;也方便自己后續做題&#xff0c;在此做個記錄。 Dijkstra基本上都會需要這些變量&#xff1a; dist[]&#xff1a;記錄各個節點到起始節點的最短權值 path[]&#xff1a;記錄各個節點的上一個節點(用來聯系該節點到起始節點的路徑)…

PostgreSQL數據庫的array類型

PostgreSQL數據庫相比其它數據庫&#xff0c;有很多獨有的字段類型。 比如array類型&#xff0c;以下表的pay_by_quarter與schedule兩個字段便是array類型&#xff0c;即數組類型。 CREATE TABLE sal_emp (name text,pay_by_quarter integer[],schedule t…

centos的根目錄占了大量空間怎么辦

問題 當根目錄磁盤不夠時&#xff0c;就必須刪除無用的文件了 上面的&#xff0c;如果刪除/usr 或/var是可以釋放出系統盤的 定位占空間大的文件 經過命令&#xff0c;一層層查哪些是占磁盤的。 du -sh /* | sort -rh | head -n 10 最終排查&#xff0c;是有個系統日志占了20…

PostgreSQL存儲過程“多態“實現:同一方法名支持不同參數

引言 在傳統編程語言中&#xff0c;方法重載&#xff08;同一方法名不同參數&#xff09;是實現多態的重要手段。但當我們將目光轉向PostgreSQL數據庫時&#xff0c;是否也能在存儲過程&#xff08;函數&#xff09;中實現類似的功能&#xff1f;本文將深入探討PostgreSQL中如…

快速學會Linux的WEB服務

一.用戶常用關于WEB的信息 什么是WWW www是world wide web的縮寫&#xff0c;及萬維網&#xff0c;也就是全球信息廣播的意思 通常說的上網就是使用www來查詢用戶所需要的信息。 www可以結合文字、圖形、影像以及聲音等多媒體&#xff0c;超鏈接的方式將信息以Internet傳遞到世…

Windows玩游戲的時候,一按字符鍵就顯示桌面

最近打賽伯朋克 2077 的時候&#xff0c;不小心按錯鍵了&#xff0c;導致一按字符鍵就顯示桌面。如下&#xff1a; 一開始我以為是輸入法的問題&#xff08;相信打游戲的人都知道輸入法和奔跑鍵沖突的時候有多煩&#xff09;&#xff0c;但是后來解決半天發現并不是。在網上搜…

【測試開發】概念篇 - 從理解需求到認識常見開發、測試模型

&#x1f4e2;博客主頁&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;博客倉庫&#xff1a;https://gitee.com/JohnKingW/linux_test/tree/master/lesson &#x1f4e2;歡迎點贊 &#x1f44d; 收藏 ?留言 &#x1f4dd; 如有錯誤敬請指正&#xff01; &…

核函數(Kernel function)

核函數 核函數在GPU上進行并行執行 注意: 限定詞__global__修飾 [雙下劃線]返回值必須是void 形式: _global_ void kernel_function( argument arg){ ? printf(“hello world from the GPU\n”); } void __global__kernel_function( argument arg){ ? printf(“hello worl…

數據結構與算法:區間dp

前言 區間dp也是動態規劃里很重要的一部分。 一、內容 區間dp的根本原理就是把大范圍問題分解成若干小范圍的問題去求解。一般來講,常見的用法有對于兩側端點去展開可能性和對于范圍上的劃分點去展開可能性。 二、題目 1.讓字符串成為回文串的最少插入次數 class Soluti…

AI Agent 入門指南:從 LLM 到智能體

AI. AI. AI. 最近耳朵里是不是總是被這些詞轟炸&#xff1f;特別是“Agent”、“AI Agent”、“智能體”、“Agentic”…… 感覺一夜之間&#xff0c;AI 就從我們熟悉的聊天框里蹦出來&#xff0c;要擁有“獨立思考”和“自主行動”的能力了&#xff1f; 說實話&#xff0c;一…

開啟docker中mysql的binlog日志

1.登陸docker服務器,輸入docker ps查看服務: 2.進入mysql服務 進入到mysql的服務容器后,輸入mysql -u*** -p***登陸 mysql 客戶端查看是否開啟binlog 輸入 : show variables like log_bin; 3.輸入quit退出mysql客戶端 4.之后在docker的mysql服務容器里查詢mysql的配置文件所在…

Kotlin 中 List 和 MutableList 的區別

在 Kotlin 中&#xff0c;List 和 MutableList 是兩種不同的集合接口&#xff0c;核心區別在于可變性。 Kotlin 集合框架的重要設計原則&#xff1a;通過接口分離只讀&#xff08;read - only&#xff09;和可變&#xff08;mutable&#xff09;操作&#xff0c;以提高代碼的安…

【能力比對】K8S數據平臺VS數據平臺

&#x1f525;&#x1f525; AllData大數據產品是可定義數據中臺&#xff0c;以數據平臺為底座&#xff0c;以數據中臺為橋梁&#xff0c;以機器學習平臺為中層框架&#xff0c;以大模型應用為上游產品&#xff0c;提供全鏈路數字化解決方案。 ?AllData數據中臺官方平臺&…