色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當(dāng)前位置:首頁(yè) > 學(xué)習(xí)資源 > 講師博文 > java異常處理機(jī)制原理

java異常處理機(jī)制原理 時(shí)間:2018-04-03      來(lái)源:未知

異常就是在程序的運(yùn)行過(guò)程中所發(fā)生的不正常的事件, 它會(huì)中斷正在運(yùn)行的程序,面對(duì)異常該怎么辦呢?通常情況下, 我們會(huì)這樣處理:

Java編程語(yǔ)言使用異常處理機(jī)制為程序提供了錯(cuò)誤處理的能力異常處理機(jī)制拋?zhàn)ツP?/p>

運(yùn)行的代碼先拋出異常: 放在try{}塊中

然后捕獲抓取異常: catch(異常類型 異常對(duì)象)

最后再進(jìn)行異常處理: catch{}塊中進(jìn)行處理

Java異常處理機(jī)制

Java中如何進(jìn)行異常處理

Java的異常處理是通過(guò)5個(gè)關(guān)鍵字來(lái)實(shí)現(xiàn)的:

try執(zhí)行可能產(chǎn)生、 catch捕獲異常、 finally無(wú)論是否發(fā)生異常,代碼總能執(zhí)行、 throw手動(dòng)/顯式、 throws拋出異常

示例:

public void method(){

try {

// 代碼段 1

// 產(chǎn)生異常的代碼段 2

// 代碼段 3

} catch (異常類型 ex) {

// 對(duì)異常進(jìn)行處理的代碼段4

}//

代碼段5

}finally{

//無(wú)論是否有異常都會(huì)執(zhí)行的代碼段6

}

try-catch異常處理流程

異常是一種特殊的對(duì)象, 類型為java.lang.Exception或其子類發(fā)生異常printStackTrace的堆棧跟蹤功能顯示出程序運(yùn)行到當(dāng)前類的執(zhí)行流程

java.util.InputMismatchException //異常類型

at java.util.Scanner.throwFor(Scanner.java:840) //異常堆棧信息

at java.util.Scanner.next(Scanner.java:1461) //在此方法中拋出了異常

at java.util.Scanner.nextInt(Scanner.java:2091)

at java.util.Scanner.nextInt(Scanner.java:2050)

at cn.jbit.exception.Test3.main(Test3.java:15)// 出現(xiàn)異常的位置

在catch塊中處理異常,可以加入用戶自定義處理信息,通過(guò)調(diào)用異常對(duì)象的方法輸出異常信息:

e.printStackTrace();

System.err.println("出現(xiàn)錯(cuò)誤: 被除數(shù)和除數(shù)必須是整數(shù)," + "除數(shù)不能為零。 ");

void printStackTrace()輸出異常的堆棧信息

String getMessage()返回異常信息描述字符串,是printStackTrace()輸出信息的一部分

方 法 名 說(shuō) 明
Exception 異常層次結(jié)構(gòu)的根類
ArithmeticException 算術(shù)錯(cuò)誤情形, 如以零作除數(shù)
ArrayIndexOutOfBoundsE
xception
數(shù)組下標(biāo)越界
NullPointerException 嘗試訪問(wèn) null 對(duì)象成員
ClassNotFoundException 不能加載所需的類
InputMismatchException 欲得到數(shù)據(jù)類型與實(shí)際輸入類型不匹配
IllegalArgumentException 方法接收到非法參數(shù)
ClassCastException 對(duì)象強(qiáng)制類型轉(zhuǎn)換出錯(cuò)
NumberFormatException 數(shù)字格式轉(zhuǎn)換異常, 如把"abc"轉(zhuǎn)換成
數(shù)字

在try-catch塊后加入finally塊, 可以確保無(wú)論是否發(fā)生異常, finally塊中的代碼總能被執(zhí)行

注意: 如果代碼塊中加入了System.exit(1);

強(qiáng)制終止程序執(zhí)行語(yǔ)句,finally塊不會(huì)執(zhí)行

public class Test4 {

public static void main(String[] args) {

try {

Scanner in = new Scanner(System.in);

System.out.print("請(qǐng)輸入被除數(shù):");

int num1 = in.nextInt();

System.out.print("請(qǐng)輸入除數(shù):");

int num2 = in.nextInt();

System.out.println(String.format("%d / %d = %d",

num1, num2, num1/ num2));

} catch (Exception e) {

System.err.println(“出現(xiàn)錯(cuò)誤: 被除數(shù)和除數(shù)必須是整數(shù), "

+"除數(shù)不能為零。 ");

System.out.println(e.getMessage());

} finally {

System.out.println("感謝使用本程序! ");

}

}

}

程序中預(yù)先想好了對(duì)付異常的處理辦法,如果程序運(yùn)行異常!則開始對(duì)異常進(jìn)行處理,處理完畢,程序繼續(xù)運(yùn)行,這就是java異常處理機(jī)制的原理,希望讀完該文章能對(duì)你有所幫助。

上一篇:Linux內(nèi)核中的數(shù)據(jù)結(jié)構(gòu)的一點(diǎn)認(rèn)識(shí)

下一篇:三層架構(gòu)實(shí)現(xiàn)Java Web案例

戳我查看嵌入式每月就業(yè)風(fēng)云榜

點(diǎn)我了解華清遠(yuǎn)見高校學(xué)霸學(xué)習(xí)秘籍

猜你關(guān)心企業(yè)是如何評(píng)價(jià)華清學(xué)員的

干貨分享
相關(guān)新聞
前臺(tái)專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2024 北京華清遠(yuǎn)見科技發(fā)展有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5京公海網(wǎng)安備11010802025203號(hào)

回到頂部

主站蜘蛛池模板: 很嫩很紧直喷白浆在线 | 两个人的房间高清在线观看 | 欧美激情综合亚洲一二区 | 国产成人免费高清激情视频 | 岛国片在线免费观看 | 亚洲人成影院在线无码按摩店 | 久久久久久久做爰片无码 | 日韩精品久久久久久免费 | 精品人妻伦九区久久AAA片 | 深夜在线免费视频 | 狠狠综合久久综合88亚洲爱文 | 无码少妇a片一区二区三区 国内精品久久久久影院蜜芽 | 久久人人爽人人爽人人片ⅴ | 亚洲精品第一国产综合精品 | 欧美尺寸又黑又粗又长 | 香蕉视频污黄在线观看 | 麻豆传媒免费看 | 国产在线看片无码不卡 | 四虎影视国产 | 日本高清免费在线观看 | 国语高潮无遮挡无码免费看 | 中文字幕一区二区三区免费视频 | 免费看的黄色 | 欧美熟妇与小伙性欧美交 | 欧美交 | 黄色片在线观看网站 | 亚洲av中文无码乱人伦在线播放 | 嘿咻嘿咻成人免费视频播放 | 最新免费av | 色欲av自慰一区二区三区 | 国内精品久久人妻朋友 | 欧美jizzhd精品欧美另类 | 一本大道在线无码一区 | 97久久国产亚洲精品超碰热 | 亚洲欧美成人精品香蕉网 | 夜色爽爽影院18禁 | 日本免费高清色视频在线观看 | 色综合av综合无码综合网站 | 欧美国产日韩a欧美在线观看 | 亚洲情A成黄在线观看动漫尤物 | 午夜成人无码福利免费视频 |