1. 程式人生 > >java異常知識點總結

java異常知識點總結

一:異常處理機制

      異常是指使執行的程式中斷或者停止的的事件,這些事件通常是由硬體或者程式邏輯不當引起的,對這些事件的捕獲和處理可以增強程式碼的健壯性。

二:異常的分類

     在java裡異常可以分為錯誤和異常,錯誤是由於java虛擬機器或者硬體出錯導致的,這些大都是人為不可控的,異常一般是由於程式碼邏輯引起的,我們可以對其進行捕獲並進行處理,無特殊說明,異常以後指第二類。異常又可分為檢查異常和非檢查異常,也可分為非執行時異常和執行時異常。檢查異常和非執行時異常是指在編譯前就需要捕獲和處理的異常,比如FileNotFindException,EOFException。非檢查異常和執行時異常在編譯期間不需要對其進行捕獲處理,但是在執行時可產生,比如空指標異常,類未找到異常,非法引數異常,陣列越界異常等。

三:異常的層級關係

      Throwable是所有異常的父類,包括Error。在Throwable下有Error,Exception兩個子類,Error就是指之前說的錯誤,Exception就是說的異常在它的子類裡又分為執行時異常(非檢查異常)和非執行時異常(檢查異常)。非執行異常又有一個統一的父類叫RunTimeException。需要注意的是,當自定義異常的時候,如果需要執行時異常,那麼只能繼承RunTimeException,而通過繼承Throwable和Exception產生的自定義異常都是檢查異常,因為在throw 的時候都需要對其進行捕獲處理。

四:異常裡的關鍵字

    異常機制裡有5大關鍵字:try catch finnaly throw throws

    try:它後面是一個程式碼塊,程式碼塊裡是可能發生異常的程式碼。

    catch:它後面是可能發生異常的型別以及異常發生後需要做的處理

    finally:後面是一個程式碼塊,主要是異常發生時資源釋放問題

    throws:出現在函式頭,用來標註丟擲異常的型別

    throw:  位於函式程式碼塊裡,用於在一定條件下丟擲什麼異常

五:自定義異常

     自定義異常分為自定義非檢查異常(執行時異常)和自定義檢查異常(非執行時異常)。只有繼承RuntimeException的自定義異常是非檢查異常(執行時異常),其餘的都是檢查異常(非執行時異常)。使用throw丟擲自定義非檢查異常(執行時異常)時不需要進行try{}catch(){}或者throws處理,但是使用throw丟擲自定義檢查異常(非執行時異常)時一定要進行try{}catch(){}或者throws處理,否則編譯無法通過。

     自定義異常一般都是重寫自定義異常類的建構函式,然後通過throw關鍵字丟擲該異常


相關推薦

java異常知識點總結

一:異常處理機制       異常是指使執行的程式中斷或者停止的的事件,這些事件通常是由硬體或者程式邏輯不當引起的,對這些事件的捕獲和處理可以增強程式碼的健壯性。 二:異常的分類      在java裡異常可以分為錯誤和異常,錯誤是由於java虛擬機器或者硬體出錯導致的,這

JAVA專案中常用的異常知識點總結

JAVA專案中常用的異常知識點總結 1. java.lang.nullpointerexception 這個異常大家肯定都經常遇到,異常的解釋是"程式遇上了空指標",簡單地說就是呼叫了未經初始化的物件或者是不存在的物件,這個錯誤經常出現在建立圖片,呼叫陣列這些操作中,比如圖片未經初始化,或者圖片

Java面試知識點總結

可見 一點 增強 但我 link 應對 pen sleep executors 本篇文章會對面試中常遇到的Java技術點進行全面深入的總結,幫助我們在面試中更加得心應手,不參加面試的同學也能夠借此機會梳理一下自己的知識體系,進行查漏補缺(閱讀本文需要有一定的Java基礎;

Java異常處理總結

tst error 有一個 ror 而是 阻止 cep 行處理 編碼 一、Java 異常繼承框架 Error: Error類對象由 Java 虛擬機生成並拋出,大多數錯誤與代碼編寫者所執行的操作無關。對於設計合理的應用程序來說,即使確實發生了錯誤,本質上也不應該試圖去處理

JAVA面試知識點總結--資料型別

一、資料型別 基本資料型別 數值型別: 運算and型別轉換 自動裝拆箱and比較 bool

JAVA SE知識點總結

                          總結 1.1         &nb

Java基礎知識點總結08

String 類 final char陣列 構造字串物件 常量物件 用雙引號括起來的字元序列。“fhsh” 字串物件 String s = new String(“I am amber”); (1)String(char a[]) (2)String(char a

Java異常解決總結

未解決問題springmvcajax-json 未解決問題已配置了註解掃描卻仍然無法注入mapper ssm整合解決碰到的異常 IncorrectResultSizeDataAccessException spring異常 org.springframework.dao.I

小白學習Java技術知識點總結,其實學習Java沒那麼難

邊學習邊記錄是程式設計師快速進步的途徑,只有你不斷累積知識,才能有質的飛躍,不斷的coding,累積經驗。 第一講,主要是Java環境變數的配置。 搭建好環境才能幹活。要理解什麼是編譯、什麼是執行。編譯是Javac.exe程式在負責;執行則由Java.exe負責。編譯後得到的是位元組碼檔案x

Java重要知識點總結

*編碼規範:常量名通常使用大寫字母,中間使用下劃線連線 *定義的final變數屬於全域性變數時,必須在定義時就設定它的初值,否則將會產生編譯錯誤。區域性變數可以不在定義的時候賦初值(但是在使用前必須賦初值)。 *普通的成員變數(全域性變數),可以為它設定初始值,也可以不設定

Java基礎知識點總結

一、構造方法 一旦自己定義了構造方法,系統不再提供預設構造方法。 子類繼承抽象父類,例項化子類時,在子類構造方法中,先呼叫父類構造方法,即super()或super(引數列表)。 二、垃圾回收 當一個物件在記憶體中被釋放時,它的finalize()方法會被自動呼叫。因此可以

Java面試知識點總結(牛客網)

---------------------https://blog.csdn.net/u012456528/article/details/79759487?utm_source=copy 1. 什麼是Java虛擬機器?為什麼Java被稱作是“平臺無關的程式語言”?

Java異常 - Exception總結

這篇blog總結的比較詳細了。 如下圖所示,在Java中所有異常的基類均為Throwable類。有兩個子類,分別為Exception和Error。其中Error主要由JVM處理,比如OutOfMemory。 RunTimeException類,指程式執行過程中的異常,同Error共同構成Java中的Unc

常見Java面試知識點總結

截止到2018年3月30日,牛客網提供了120道Java面試題,這裡整理了部分較為重點的內容,而且對於答案有困惑,補充瞭解釋內容,便於理解。全部Java題目可參考:https://www.nowcoder.com/ta/review-java 1. 什麼是

java基礎知識點總結(一)

1.如果main方法被宣告為private會怎麼樣?   能正常編譯,但執行的時候會提示“main方法不是public的”。 2.java裡的傳引用和傳值的區別是什麼?   傳引用是指傳遞的是地址而不是值本身,傳值則是傳遞值的一份拷貝。 3.如果要重寫一個物件的equals

Java異常機制總結

在java中,異常機制用的比C++頻繁,但是一直沒有比較系統完整地對java的異常機制作總結,使用異常的過程中總有點心裡沒底的感覺,這次進行一次相對完整的總結 首先是java的異常機制繼承體系: Java的異常機制分成兩大類:error(錯誤)和exception(異常),

Java散落知識點總結(一)

1.陣列 1. <span style="white-space:pre"> </span><span style="font-size:18px;">int[]

Java異常總結

算術異常類:ArithmeticExecption   空指標異常類:NullPointerException   型別強制轉換異常:ClassCastException   陣列負下標異常:NegativeArrayException   陣列下標越界異常:ArrayInd

Java筆試知識點總結(基礎)

異常 異常分類 Java的異常分為兩種,一種是執行時異常(RuntimeException),一種是非執行異常也叫檢查式異常(CheckedException)。 對異常的處理只有兩種try  catch捕獲或throws 宣告(丟擲)異常 1、執行時異常不需要程

Java異常學習總結

找不到 wid orm 參數 算術 ali text 不能 過程 Java中的異常 定義 異常(Exception)就是在程序的運行過程中所發生的不正常的事件,它會中斷正在運行的程序。 常見類型舉例 所需文件找不到(ClassNotFoundException) 網絡連