激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - Java學習筆記之異常處理

Java學習筆記之異常處理

2021-06-02 14:21莫凡丶 Java教程

這篇文章主要為大家詳細介紹了Java學習筆記之異常處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java異常處理的具體代碼,供大家參考,具體內容如下

一.異常的分類

1.由java虛擬機拋出的異常(error):程序無法處理的問題,用戶不用去進行處理(虛擬機錯誤丶內存溢出錯誤丶線程死鎖)

2.exception異常:程序本身可以進行處理的異常

1).非檢查異常(unchecked exception):編譯器不需要強制處理的異常(空指針異常丶數組下標越界異常丶算數異常丶類型轉換異常)

2).檢查異常(checked exception):編譯器需要強制處理的異常(ioexception丶sqlexception) 

二.異常處理的兩種方法

1.通過try丶catch和finally關鍵字在當前位置進行異常處理

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static void main(string[] a){
 int sum = 0;
 while(true){
  try {  //以兩數相除除數不能為0進行舉例
   system.out.println("請依次輸入兩個數值進行除法操作:");
   scanner scanner = new scanner(system.in);
   int one =scanner.nextint();
   int two =scanner.nextint();
   sum = one/two;
   system.out.println("最終結果為:"+sum);
  } catch (exception e) {    //用catch將錯誤進行捕捉,這里可以使用多重catch,對于不同的錯誤進行捕捉,但最后的catch建議為exception。
   // todo auto-generated catch block //顯示錯誤堆棧信息
   e.printstacktrace();                          
  }finally{            
 
 system.out.print("無論有沒有錯誤我都會執行");          }
 }
 }
}

輸出:

Java學習筆記之異常處理

2.通過try丶catch丶finally丶throw和throws拋出異常給函數調用者進行處理

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class try {
 public static void main(string[] a){
  try{
   function();  //在函數調用者處對異常進行處理
  }catch(exception e)
  {
   e.printstacktrace();
  }
 }
 static void function() throws exception{  //通過throws將異常進行拋出
  
  system.out.println("請輸入一個數值進行判斷:");
  scanner scanner = new scanner(system.in);
  int one =scanner.nextint();
  if(one<100)
  {
   throw new exception(); //若輸入的數值小于100則拋出異常
  }
 }
}

輸出:

Java學習筆記之異常處理

3.自定義異常進行處理

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class myexception extends exception{  //自定義異常,通過super方法傳遞異常信息給父級
 public myexception(){
 super("這是我自定義的異常");
 }
}
 
public class try {
 public static void main(string[] a){
  try{
   function();
  }catch(myexception e)
  {
   e.printstacktrace();
  }
 }
 static void function() throws myexception{
  
  system.out.println("請輸入一個數值進行判斷:");
  scanner scanner = new scanner(system.in);
  int one =scanner.nextint();
  if(one<100)
  {
   throw new myexception(); //將自定義異常進行拋出  
  }
 }
}

輸出:

Java學習筆記之異常處理

三.異常鏈

有的時候我們會在處理一個異常的時候拋出一個新的異常,也就是異常的嵌套,但是最后我們得到的異常信息卻只有一個。

示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class try {
 public static void main(string[] a){
  try{
   function1();
  }catch(exception e)
  {
   e.printstacktrace();
  }
 }
 static void function1() throws exception{
  try{
   function2();
  }catch(exception e){
   throw new exception();
  }
 }
 static void function2() throws exception{
  try{
   function3();
  }catch(exception e){
   throw new exception();
  }
 }
 static void function3() throws exception{
   throw new exception();
 }
}

輸入結果:

Java學習筆記之異常處理

這樣的話顯示出的異常就只有一個了,那我們如果想讓這條異常鏈中的所有異常信息全部輸出該怎么辦呢?方法很簡單,我們在拋出異常的時候將異常對象也當作參數進行拋出就行了。

示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class try {
 public static void main(string[] a){
  try{
   function1();
  }catch(exception e)
  {
   e.printstacktrace();
  }
 }
 static void function1() throws exception{
  try{
   function2();
  }catch(exception e){
   throw new exception("異常2",e);
  }
 }
 static void function2() throws exception{
  try{
   function3();
  }catch(exception e){
   throw new exception("異常2",e);
  }
 }
 static void function3() throws exception{
   throw new exception("異常3");
 }
}

運行結果:

Java學習筆記之異常處理

到此,我們java中的異常便是描述完了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/ygxdbmx/archive/2018/10/03/9736189.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色av综合在线 | 国产精品久久久久久久午夜片 | 成年性羞羞视频免费观看无限 | 麻豆视频在线免费观看 | 国产成人午夜精品 | 亚洲美女网站在线观看 | 91精品久久久久久久久 | 神马福利电影 | 全黄裸片武则天一级第4季 九色p | 欧美一级特黄a | 毛片视频网站 | 久久久鲁 | 欧美一级特级 | gogo全球大胆高清人露出91 | 日本一区二区三区精品 | 久久国产精品久久精品国产演员表 | 欧美成人理论片乱 | 黑人三级毛片 | 91精品国产乱码久久久久 | 国产亚洲精品综合一区91555 | 黄色毛片免费视频 | 午夜免费一区 | 国产一区精品在线观看 | 黄色网址在线免费 | 日本爽快片100色毛片视频 | 国产91亚洲精品久久久 | cosplay裸体福利写真 | 免费黄色一级网站 | 久久久日韩av免费观看下载 | av在线观| 99麻豆久久久国产精品免费 | 91网站在线观看视频 | 亚洲欧洲日产v特级毛片 | 激情在线观看视频 | 成人一区二区在线观看视频 | 日本大片在线播放 | 成人一级毛片 | 伊人成人免费视频 | 欧美日韩在线免费观看 | 视频一区二区国产 | 一级成人欧美一区在线观看 |