亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人

當前位置:首頁 > 學習資源 > 講師博文 > java異常處理機制原理

java異常處理機制原理 時間:2018-04-03      來源:未知

異常就是在程序的運行過程中所發生的不正常的事件, 它會中斷正在運行的程序,面對異常該怎么辦呢?通常情況下, 我們會這樣處理:

Java編程語言使用異常處理機制為程序提供了錯誤處理的能力異常處理機制拋抓模型

運行的代碼先拋出異常: 放在try{}塊中

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

最后再進行異常處理: catch{}塊中進行處理

Java異常處理機制

Java中如何進行異常處理

Java的異常處理是通過5個關鍵字來實現的:

try執行可能產生、 catch捕獲異常、 finally無論是否發生異常,代碼總能執行、 throw手動/顯式、 throws拋出異常

示例:

public void method(){

try {

// 代碼段 1

// 產生異常的代碼段 2

// 代碼段 3

} catch (異常類型 ex) {

// 對異常進行處理的代碼段4

}//

代碼段5

}finally{

//無論是否有異常都會執行的代碼段6

}

try-catch異常處理流程

異常是一種特殊的對象, 類型為java.lang.Exception或其子類發生異常printStackTrace的堆棧跟蹤功能顯示出程序運行到當前類的執行流程

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)// 出現異常的位置

在catch塊中處理異常,可以加入用戶自定義處理信息,通過調用異常對象的方法輸出異常信息:

e.printStackTrace();

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

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

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

方 法 名 說 明
Exception 異常層次結構的根類
ArithmeticException 算術錯誤情形, 如以零作除數
ArrayIndexOutOfBoundsE
xception
數組下標越界
NullPointerException 嘗試訪問 null 對象成員
ClassNotFoundException 不能加載所需的類
InputMismatchException 欲得到數據類型與實際輸入類型不匹配
IllegalArgumentException 方法接收到非法參數
ClassCastException 對象強制類型轉換出錯
NumberFormatException 數字格式轉換異常, 如把"abc"轉換成
數字

在try-catch塊后加入finally塊, 可以確保無論是否發生異常, finally塊中的代碼總能被執行

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

強制終止程序執行語句,finally塊不會執行

public class Test4 {

public static void main(String[] args) {

try {

Scanner in = new Scanner(System.in);

System.out.print("請輸入被除數:");

int num1 = in.nextInt();

System.out.print("請輸入除數:");

int num2 = in.nextInt();

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

num1, num2, num1/ num2));

} catch (Exception e) {

System.err.println(“出現錯誤: 被除數和除數必須是整數, "

+"除數不能為零。 ");

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

} finally {

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

}

}

}

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

上一篇:Linux內核中的數據結構的一點認識

下一篇:三層架構實現Java Web案例

戳我查看嵌入式每月就業風云榜

點我了解華清遠見高校學霸學習秘籍

猜你關心企業是如何評價華清學員的

干貨分享
相關新聞
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2024 北京華清遠見科技發展有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 久久久亚洲精品国产 | 免费精品精品国产欧美在线 | 欧美亚洲国产激情一区二区 | 国产成人高清精品免费观看 | 精品欧美高清一区二区免费 | 久久精品国产久精国产80cm | 日本免费网 | 麻豆国内精品久久久久久 | 老子影院午夜伦不卡不四虎卡 | 日本xxx在线观看免费播放 | 日本69视频在线观看 | 欧美影院一区二区三区 | 国产精品香蕉一区二区三区 | 国产性夜夜春夜夜爽三级 | 国产一区二区三区久久精品 | 操操碰| 亚洲色视频在线播放网站 | 玖草网 | 久久久99视频 | 亚洲精品免费在线视频 | 久久时间网 | 精品久久久久久久久久 | 九九精品热线免费观看6 | 日韩在线免费播放 | 日本三级香港三级人妇gg在线 | 青青成人福利国产在线视频 | 日本一区二区三区免费在线观看 | 99re热这里只有精品18 | 亚洲视频国产 | 免费黄色的网站 | 老子影院午夜理伦手机不卡 | 美女国产在线观看 | 欧洲亚洲综合一区二区三区 | 久久久亚洲欧洲日产国码二区 | 日本三级视频在线观看 | 欧美xxxx狂喷水喷水 | 人人做人人爽人人爱影视 | wwwwww日本| 天天色综合色 | 日本a∨在线 | 曰本女人色黄网站 |