Java面向?qū)ο笾裁词钱惓?/h1>
更新時間:2021年07月27日 09:59:40 作者:乾坤大那挪
Java 把異常當作對象來處理,并定義一個基類,java.lang.Throwable 作為所有異常的超類。今天通過本文給大家分享Java面向?qū)ο笾裁词钱惓?,感興趣的朋友一起看看吧
基礎概念
(1)異常:Java程序在運行時期發(fā)生的不正常情況。
Java就按照面向?qū)ο蟮乃枷雽Σ徽G闆r進行描述和對象的封裝。
(2)異常問題分類:?。═hrowable:定義對于問題共性的功能。)
1.Error:由系統(tǒng)底層發(fā)生的,jvn告訴使用者。不做針對性處理,直接修改代碼。
2.Exception:發(fā)生并告訴使用者,可以進行針對性的處理。
?。?)異常的處理情況:
1.遇到問題不進行具體的處理,繼續(xù)拋給調(diào)用者。就是在函數(shù)上通過throws關鍵字聲明異常。目的是讓調(diào)用者可以進行處理。
2.針對性的處理方式:捕獲!
try
{
//有可能發(fā)生異常的代碼。
}
catch(異常類 變量)
{
//這是真正的捕獲,處理異常的代碼;
}
finally
{
//一定會被執(zhí)行的代碼。
}
一、什么是異常
- 實際工作中,遇到的情況下不可能是非常完美的。比如:你寫的某個模塊,用戶輸入不一定符合你的要求、你的程序要打開某個文件,這個文件可能不存在或者格式不對,你要讀取數(shù)據(jù)庫的數(shù)據(jù),數(shù)據(jù)庫可能是空的等。程序在跑的時候,內(nèi)存或硬盤滿了等情況,就是異常了。
- 軟件在運行過程中,非??赡苡龅絼倓偺岬降倪@些異常問題,我們叫異常,英文是:Exception,意思是例外。這些例外情況,或者叫異常,怎么讓我們的程序做出合理的處理。而不至于程序崩潰。
- 異常值程序運行中出現(xiàn)的不期而至的各種狀況,如:文件找不到、網(wǎng)絡連接失敗、非法參數(shù)等。
- 異常發(fā)生在程序運行期間,它影響了正常的程序執(zhí)行流程。
二、簡單分類
- 要理解Java異常處理是如何工作的,你需要掌握一下三種異常: 異常處理框架
- 檢查性異常:最具代表性的檢查性異常是用戶錯誤或問題引起的異常,這是程序員無法預見的。例如要打開一個文件是,一個異常就發(fā)生了,這些異常在編譯時不能唄簡單地忽略。
- 運行時異常:運行時異常是可能被程序員忽略的異常。與檢查性異常相反,運行時異??梢栽诰幾g時被避免。
- 錯誤 ERROR:錯誤不是異常,而是脫離程序員控制的問題。錯誤在代碼中通常被忽略。例如,當棧溢出時,一個錯誤就發(fā)生了,它們在編譯時也檢查不到。
三、異常體系結構
- Java 把異常當作對象來處理,并定義一個基類 java.lang.Throwable 作為所有異常的超類。
- 在 Java API中已經(jīng)定義了許多異常類,這些異常類分為兩大類,錯誤 Error 和 異常 Exception。

四、Error
- Error 類對象由 Java 虛擬機生成并拋出,大多數(shù)錯誤與代碼編寫者所執(zhí)行的操作無關。
- Java 虛擬機運行錯誤(Virtual MachineError),當 JVM 不再有繼續(xù)執(zhí)行操作所需要的內(nèi)存資源時,將出現(xiàn) OutOfMemoryError。這些異常發(fā)生時,Java 虛擬機(JVM)一般會選擇線程終止。
- 還有發(fā)生在虛擬機識圖執(zhí)行應用時,如類定義錯誤(NoClassDefFoundError)、鏈接錯誤(LinkageError)。這些錯誤是不可查的,因為它們在引用程序的控制和處理能力之外,而且絕大多數(shù)是程序運行時不允許出現(xiàn)的狀況。
五、Exception
- 在 Exception 分支中有一個重要的子類 RuntimeException(運行時異常)
ArrayIndexOutOfBoundsException(數(shù)組下標越界)
NullPointerException(空指針異常)
ArithmeticException(算術異常)
MissingResourceException(丟失資源)
ClassNotFoundException(找不到類)
等異常,這些異常是不檢查異常不是檢查性異常,程序中可以選擇捕獲處理,也可以不處理。
- 這些異常一般是由程序邏輯錯誤引起的,程序應該從邏輯角度盡量避免這類異常的發(fā)生。
- Error 和 Exception 的區(qū)別:Error 通常是災難性的致命的錯誤,是程序無法控制和處理的,當出現(xiàn)這些異常時,Java 虛擬機(JVM)一般會選擇終止線程; Exception 通常情況下是可以被程序處理掉額,并且在程序中應該盡可能地去處理這些異常。
到此這篇關于Java面向?qū)ο笾裁词钱惓5奈恼戮徒榻B到這了,更多相關java面向?qū)ο螽惓?nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
-
java中switch條件語句的三種語法、用法及支持的參數(shù)類型
Java中的switch語句是一種多分支選擇結構,可以一個變量的值改變程序的控制流,這篇文章主要給大家介紹了關于java中switch條件語句的三種語法、用法及支持的參數(shù)類型的相關資料,需要的朋友可以參考下 2024-06-06
-
SpringBoot中的@ConditionalOnMissingBean注解使用詳解
這篇文章主要介紹了SpringBoot中的@ConditionalOnMissingBean注解使用詳解,@ConditionalOnMissingBean作用在@Bean定義上,也就是說在容器加載它作用的Bean時,檢查容器中是否存在目標類型,需要的朋友可以參考下 2024-01-01
-
springboot controller 增加指定前綴的兩種實現(xiàn)方法
這篇文章主要介紹了springboot controller 增加指定前綴的兩種實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教 2022-02-02
最新評論
基礎概念
(1)異常:Java程序在運行時期發(fā)生的不正常情況。
Java就按照面向?qū)ο蟮乃枷雽Σ徽G闆r進行描述和對象的封裝。
(2)異常問題分類:?。═hrowable:定義對于問題共性的功能。)
1.Error:由系統(tǒng)底層發(fā)生的,jvn告訴使用者。不做針對性處理,直接修改代碼。
2.Exception:發(fā)生并告訴使用者,可以進行針對性的處理。
?。?)異常的處理情況:
1.遇到問題不進行具體的處理,繼續(xù)拋給調(diào)用者。就是在函數(shù)上通過throws關鍵字聲明異常。目的是讓調(diào)用者可以進行處理。
2.針對性的處理方式:捕獲!
try
{
//有可能發(fā)生異常的代碼。
}
catch(異常類 變量)
{
//這是真正的捕獲,處理異常的代碼;
}
finally
{
//一定會被執(zhí)行的代碼。
}
一、什么是異常
- 實際工作中,遇到的情況下不可能是非常完美的。比如:你寫的某個模塊,用戶輸入不一定符合你的要求、你的程序要打開某個文件,這個文件可能不存在或者格式不對,你要讀取數(shù)據(jù)庫的數(shù)據(jù),數(shù)據(jù)庫可能是空的等。程序在跑的時候,內(nèi)存或硬盤滿了等情況,就是異常了。
- 軟件在運行過程中,非??赡苡龅絼倓偺岬降倪@些異常問題,我們叫異常,英文是:Exception,意思是例外。這些例外情況,或者叫異常,怎么讓我們的程序做出合理的處理。而不至于程序崩潰。
- 異常值程序運行中出現(xiàn)的不期而至的各種狀況,如:文件找不到、網(wǎng)絡連接失敗、非法參數(shù)等。
- 異常發(fā)生在程序運行期間,它影響了正常的程序執(zhí)行流程。
二、簡單分類
- 要理解Java異常處理是如何工作的,你需要掌握一下三種異常: 異常處理框架
- 檢查性異常:最具代表性的檢查性異常是用戶錯誤或問題引起的異常,這是程序員無法預見的。例如要打開一個文件是,一個異常就發(fā)生了,這些異常在編譯時不能唄簡單地忽略。
- 運行時異常:運行時異常是可能被程序員忽略的異常。與檢查性異常相反,運行時異??梢栽诰幾g時被避免。
- 錯誤 ERROR:錯誤不是異常,而是脫離程序員控制的問題。錯誤在代碼中通常被忽略。例如,當棧溢出時,一個錯誤就發(fā)生了,它們在編譯時也檢查不到。
三、異常體系結構
- Java 把異常當作對象來處理,并定義一個基類 java.lang.Throwable 作為所有異常的超類。
- 在 Java API中已經(jīng)定義了許多異常類,這些異常類分為兩大類,錯誤 Error 和 異常 Exception。

四、Error
- Error 類對象由 Java 虛擬機生成并拋出,大多數(shù)錯誤與代碼編寫者所執(zhí)行的操作無關。
- Java 虛擬機運行錯誤(Virtual MachineError),當 JVM 不再有繼續(xù)執(zhí)行操作所需要的內(nèi)存資源時,將出現(xiàn) OutOfMemoryError。這些異常發(fā)生時,Java 虛擬機(JVM)一般會選擇線程終止。
- 還有發(fā)生在虛擬機識圖執(zhí)行應用時,如類定義錯誤(NoClassDefFoundError)、鏈接錯誤(LinkageError)。這些錯誤是不可查的,因為它們在引用程序的控制和處理能力之外,而且絕大多數(shù)是程序運行時不允許出現(xiàn)的狀況。
五、Exception
- 在 Exception 分支中有一個重要的子類 RuntimeException(運行時異常)
ArrayIndexOutOfBoundsException(數(shù)組下標越界)
NullPointerException(空指針異常)
ArithmeticException(算術異常)
MissingResourceException(丟失資源)
ClassNotFoundException(找不到類)
等異常,這些異常是不檢查異常不是檢查性異常,程序中可以選擇捕獲處理,也可以不處理。
- 這些異常一般是由程序邏輯錯誤引起的,程序應該從邏輯角度盡量避免這類異常的發(fā)生。
- Error 和 Exception 的區(qū)別:Error 通常是災難性的致命的錯誤,是程序無法控制和處理的,當出現(xiàn)這些異常時,Java 虛擬機(JVM)一般會選擇終止線程; Exception 通常情況下是可以被程序處理掉額,并且在程序中應該盡可能地去處理這些異常。
到此這篇關于Java面向?qū)ο笾裁词钱惓5奈恼戮徒榻B到這了,更多相關java面向?qū)ο螽惓?nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
java中switch條件語句的三種語法、用法及支持的參數(shù)類型
Java中的switch語句是一種多分支選擇結構,可以一個變量的值改變程序的控制流,這篇文章主要給大家介紹了關于java中switch條件語句的三種語法、用法及支持的參數(shù)類型的相關資料,需要的朋友可以參考下2024-06-06
SpringBoot中的@ConditionalOnMissingBean注解使用詳解
這篇文章主要介紹了SpringBoot中的@ConditionalOnMissingBean注解使用詳解,@ConditionalOnMissingBean作用在@Bean定義上,也就是說在容器加載它作用的Bean時,檢查容器中是否存在目標類型,需要的朋友可以參考下2024-01-01
springboot controller 增加指定前綴的兩種實現(xiàn)方法
這篇文章主要介紹了springboot controller 增加指定前綴的兩種實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02

