最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java異常處理try?catch的基本用法

 更新時(shí)間:2021年12月06日 10:24:39   作者:花澤香瓜  
try就像一個(gè)網(wǎng),把try{}里面的代碼所拋出的異常都網(wǎng)住,然后把異常交給catch{}里面的代碼去處理。最后執(zhí)行finally之中的代碼。無論try中代碼有沒有異常,也無論catch是否將異常捕獲到,finally中的代碼都一定會被執(zhí)行。

try catch介紹

我們編譯運(yùn)行程序出錯(cuò)的時(shí)候,編譯器就會拋出異常。拋出異常要比終止程序靈活許多,這是因?yàn)镴ava提供了一個(gè)“捕獲”異常的的處理器(處理器)對異常情況進(jìn)行處理。

如果沒有提供處理器機(jī)制,程序就會終止,并在控制臺上打印一條信息,給出異常的類型.L

比如:使用了NULL引用或者是數(shù)組越界等。

異常有兩種類型:未檢查異常和已檢查異常對于已檢查異常,處理器器將會檢查是否提供了處理器。

然而有許多的異常,如:訪問null引用,都屬于未檢查異常。編譯器不會查看是否為這些錯(cuò)誤提供了處理器。畢竟,應(yīng)該用嚴(yán)謹(jǐn)?shù)膽B(tài)度來對待寫代碼,依次避免這些錯(cuò)誤的發(fā)生,而不是將精力花在編寫異常處理器上。

?廢話少說,show coder:?

?/ * try catch:自己處理異常

? * try {

? *可能出現(xiàn)異常的代碼

? *} catch(異常類名A e){

? *如果出現(xiàn)了異常類A類型的異常,那么執(zhí)行該代碼

? *} ...(catch可以有多個(gè))

? * finally {

? *最終肯定必須要執(zhí)行的代碼(例如釋放資源的代碼)

? *}

? *代碼執(zhí)行的順序:

? * 1.try內(nèi)的代碼從出現(xiàn)異常的那一行開始,中斷執(zhí)行

? * 2.執(zhí)行對應(yīng)的catch塊內(nèi)的代碼

? * 3.繼續(xù)執(zhí)行try catch結(jié)構(gòu)之后的代碼

? *注意點(diǎn):

? * 1.如果catch內(nèi)的異常類存在子父類的關(guān)系,那么子類應(yīng)該在前,父類在后

? * 2。如果最后中有返回語句,那么最后返回的結(jié)果肯定以最終中的返回值為準(zhǔn)

? * 3。如果最后語句中有回報(bào),那么沒有被處理的異常將會被吞掉

? *重寫的注意點(diǎn):

? * 1.兒子不能比父親的本事大

? * 2.兒子要比父親開放

? * 3.兒子不能比父親惹更大的麻煩(子類的異常的類型不能是父類的異常的父類型)

? *異常類Api:

? * 1。的getMessage():獲取異常描述信息字符串

? * 2。的toString():返回異常類的包路徑和類

名和異常描述信息字符串??

? * 3。的printStackTrace():除了打印的toString的信息外,還要打印堆棧信息

? * /

上面一段注釋來自網(wǎng)上這位博主的,覺得寫的很好,傳送門地址:http://m.fzitv.net/article/231170.htm

package Bird;
 
import java.io.FileNotFoundException;
import java.io.FileReader;
 
//
public class TestYc {
	public static void main(String[] args) {
		try{
			FileReader fr = new FileReader("c:/abc.txt");
					} catch (FileNotFoundException e) {
						//打印輸出異常
						e.printStackTrace();
					}		
	
	Mother mother  = new Mother();
	mother.bbb();
	//1.編譯時(shí)異常
	//讀取該路徑"c:/abc.txt"下的文件
	/* try {
		 FileReader fr = new FileReader("c:/abc.txt");
	 }catch(FileNotFoundException e) {
		//打印輸出異常
			e.printStackTrace();
	 }*/
	int [] arr = new int[] {1,2,3};
	System.out.println(arr[2]);
	}
}
 
class Mother {
 
	private Boy b = null;
 
	// 構(gòu)造器
	public Mother() {
 
		b = new Boy();
 
	}
 
	public void bbb() {
		// TODO Auto-generated method stub
		//調(diào)用帶有異常的方法
		try {
			b.aaa();
		}catch(FileNotFoundException e) {
			e.printStackTrace();
			
		}
		
	}
}
 
class Boy {
	// throws 把異常拋給上層的調(diào)用者
	public  void aaa() throws FileNotFoundException{
		FileReader fr = new FileReader("c:/abc.txt");
	}
}

運(yùn)行截圖,文件打開不存在:

?正常運(yùn)行截圖:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBatch跳過異常和限制方式

    SpringBatch跳過異常和限制方式

    這篇文章主要介紹了SpringBatch跳過異常和限制方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • RocketMQ消息丟失場景以及解決方法

    RocketMQ消息丟失場景以及解決方法

    這篇文章主要給大家介紹了關(guān)于RocketMQ消息丟失場景以及解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Collections工具類_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Collections工具類_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Collections工具類提供了大量針對Collection/Map的操作。這篇文章主要介紹了Collections工具類_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理,需要的朋友可以參考下
    2017-04-04
  • Java檢測網(wǎng)絡(luò)是否正常通訊

    Java檢測網(wǎng)絡(luò)是否正常通訊

    在網(wǎng)絡(luò)應(yīng)用程序中,檢測IP地址和端口是否通常是必要的,本文主要介紹了Java檢測網(wǎng)絡(luò)是否正常通訊,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-11-11
  • SpringBoot啟動(dòng)時(shí)自動(dòng)執(zhí)行代碼的幾種實(shí)現(xiàn)方式

    SpringBoot啟動(dòng)時(shí)自動(dòng)執(zhí)行代碼的幾種實(shí)現(xiàn)方式

    這篇文章主要給大家介紹了關(guān)于SpringBoot啟動(dòng)時(shí)自動(dòng)執(zhí)行代碼的幾種實(shí)現(xiàn)方式,文中通過實(shí)例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-02-02
  • java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾

    java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾

    這篇文章主要為大家詳細(xì)介紹了java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 解決springboot bean中大寫的字段返回變成小寫的問題

    解決springboot bean中大寫的字段返回變成小寫的問題

    這篇文章主要介紹了解決springboot bean中大寫的字段返回變成小寫的問題,具有很好的參考價(jià)值希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • springboot中用fastjson處理返回值為null的屬性值

    springboot中用fastjson處理返回值為null的屬性值

    在本篇文章里小編給大家整理的是一篇關(guān)于springboot中用fastjson處理返回值問題詳解內(nèi)容,需要的朋友們參考下。
    2020-03-03
  • Java數(shù)組與二維數(shù)組及替換空格實(shí)戰(zhàn)真題講解

    Java數(shù)組與二維數(shù)組及替換空格實(shí)戰(zhàn)真題講解

    數(shù)組對于每一門編程語言來說都是重要的數(shù)據(jù)結(jié)構(gòu)之一,當(dāng)然不同語言對數(shù)組的實(shí)現(xiàn)及處理也不盡相同。Java?語言中提供的數(shù)組是用來存儲固定大小的同類型元素,這篇文章主要介紹了Java數(shù)組與二維數(shù)組及替換空格實(shí)戰(zhàn)真題講解
    2022-07-07
  • IntelliJ IDEA 安裝教程2019.09.23(最新版)

    IntelliJ IDEA 安裝教程2019.09.23(最新版)

    本文通過圖文并茂的形式給大家介紹了IntelliJ IDEA 安裝教程2019.09.23最新版,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評論

高尔夫| 股票| 泗阳县| 临泉县| 肇州县| 喀什市| 观塘区| 平湖市| 城固县| 斗六市| 长沙县| 台北县| 枞阳县| 重庆市| 巢湖市| 潜江市| 荥阳市| 县级市| 财经| 舟山市| 武义县| 精河县| 凌海市| 陇西县| 应用必备| 宜兰市| 璧山县| 永泰县| 曲水县| 炎陵县| 甘孜| 潍坊市| 富民县| 德钦县| 慈溪市| 都兰县| 沂水县| 社会| 沭阳县| 鄱阳县| 重庆市|