真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何使用Java異常處理

這篇文章主要為大家展示了如何使用Java異常處理,內(nèi)容簡(jiǎn)而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會(huì)有收獲的,下面讓小編帶大家一起來(lái)看看吧。

成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站制作、南宮網(wǎng)絡(luò)推廣、小程序設(shè)計(jì)、南宮網(wǎng)絡(luò)營(yíng)銷、南宮企業(yè)策劃、南宮品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供南宮建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com

異常:

  • 異常是程序運(yùn)行中發(fā)生的錯(cuò)誤,比較常見(jiàn)的比如“除零異?!?,如果一個(gè)除數(shù)為零,那么會(huì)發(fā)生這個(gè)異常
  • 異常會(huì)影響程序的正常運(yùn)行,所以我們需要處理異常。
  • 如何使用Java異常處理
  • 所有的異常類是從 java.lang.Exception 類繼承的子類。 異常類有兩個(gè)主要的子類:IOException 類和 RuntimeException 類。

常見(jiàn)異常:

算術(shù)異常類:ArithmeticExecption

空指針異常類:NullPointerException

類型強(qiáng)制轉(zhuǎn)換異常:ClassCastException

數(shù)組下標(biāo)越界異常:ArrayIndexOutOfBoundsException

輸入輸出異常:IOException


處理異常:

  • 異常的捕獲:try…catch…finally

    • 格式:如何使用Java異常處理
    • try代碼塊:里面放的是異??赡馨l(fā)生的代碼
    • catch代碼塊【可以有多個(gè)】:進(jìn)行捕獲異常的操作
      • e是捕獲的異常類對(duì)象,直接打印會(huì)得到字符串結(jié)果(包含異常的線程、類型、位置)
      • e.getMessage():只返回異常的類型+原因
      • e.printStackTrace(): 異常的類型+原因+位置
      • e.toString():異常的類型+原因
    • finally【可選】:放的是無(wú)論發(fā)生異常與否都會(huì)執(zhí)行的代碼
    • 異常類如果無(wú)法確定類型而準(zhǔn)確捕獲時(shí),可以捕獲成所有異常類的父類Exception
    • 當(dāng)異常捕獲成功后,try…catch…finally代碼塊后面的代碼可以執(zhí)行成功。

如何使用Java異常處理

如何使用Java異常處理

public class Demo {

  public static void main(String[] args) {
//    int a=10/0;
    try{
      int a=10/0;
    }catch(ArithmeticException e) {
      System.out.println("run in ArithmeticException "+e);
      //run in ArithmeticException java.lang.ArithmeticException: / by zero
    }
    catch (Exception e) {
      System.out.println(e);
    }finally {
      System.out.println("最終執(zhí)行的");//最終執(zhí)行的
    }

  }

}
  • 異常的聲明:

throws用于聲明異常,聲明函數(shù)可能發(fā)生的異常?!井?dāng)函數(shù)中有throw來(lái)拋出異常時(shí),函數(shù)頭必須使用throws聲明異?!?/p>

  • 拋出異常:

throw用于手動(dòng)拋出異常,可以拋出自定義異常信息:throw 異常類型(異常信息)

public class Demo2 {
  
  static int div(int a,int b) throws ArithmeticException{
    if (b==0){
      throw new ArithmeticException("發(fā)生除零異常了!");
    }
    return a/b;
  }
  
  public static void main(String args[]) {
    try {
      System.out.println(div(2,0));
    }catch(ArithmeticException e) {
      System.out.println(e.getMessage());//發(fā)生除零異常了!
    }finally {
      System.out.println("in finally");//in finally
    }
    System.out.println("after finally");//after finally
    
  }
}

一般對(duì)于不想在函數(shù)中處理異常時(shí),一般采用異常拋出處理(throw throws);否則使用try…catch…finally捕獲異常。

自定義異常:

有時(shí)候沒(méi)有定義我們想要的異常(比如我們MySQL連接異常),那么我們可以自定義異常。

  • 所有異常都必須是 Throwable 的子類。
  • 如果希望寫一個(gè)檢查性異常類(是一些編譯器會(huì)幫忙檢查的異常),則需要繼承 Exception 類。
  • 如果你想寫一個(gè)運(yùn)行時(shí)異常類(異常比如說(shuō),數(shù)組下標(biāo)越界和訪問(wèn)空指針異常),那么需要繼承 RuntimeException 類【這種異常類不需要throws】。
class MyException extends Exception{
  public MyException() {}
  public MyException(String msg) {
    super(msg);
  }
}

public class Demo3 {
  
  static int div(int a,int b) throws MyException {
    if (b==0){
      throw new MyException("發(fā)生異常了!");
    }
    return a/b;
  }
  
  public static void main(String args[]) {
    try {
      System.out.println(div(2,0));
    }catch(Exception e) {
      System.out.println(e);//異常.MyException: 發(fā)生除零異常了!
    }
    
  }
}

斷言:

  • assertion(斷言)在軟件開(kāi)發(fā)中是一種常用的調(diào)試方式
  • 斷言一般是判斷條件是否符合來(lái)決定程序是否繼續(xù)執(zhí)行的。【比如,你要吃飯,那么assert一下飯到手了沒(méi)有,不然你可能會(huì)吃空氣】
  • 斷言的開(kāi)啟:eclipse、myeclipse的assert默認(rèn)是關(guān)閉,想開(kāi)啟assert需要在設(shè)置perferences-》Java-》installed jres中配置一下虛擬機(jī)參數(shù),配置成-ea或者-enableassertions如何使用Java異常處理
  • Java中使用assert來(lái)定義斷言:格式:assert [boolean 表達(dá)式]
public class Demo {

  public static void main(String[] args) {
    Boolean food=false;
    System.out.println("準(zhǔn)備開(kāi)始吃飯");
    assert food;
    
    System.out.println("飯來(lái)了");
    

  }

}

如何使用Java異常處理

以上就是關(guān)于如何使用Java異常處理的內(nèi)容,如果你們有學(xué)習(xí)到知識(shí)或者技能,可以把它分享出去讓更多的人看到。


網(wǎng)站名稱:如何使用Java異常處理
文章分享:http://weahome.cn/article/iphgpc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部