Java 异常处理机制(一)

原创 2015年11月19日 18:58:24

Java 异常处理(一)

1、try和catch语句

    (1)try语句用于指明可能产生异常的代码段,而catch语句则紧跟try语句之后,用于捕捉异常,并进行相应的异常   

             处理。

int a;
int b=0;
int c=1;
try{
  a=c/b;
}catch(ArithmeticException e){
  System.out.println("算术异常处理!");
}


 

    (2)一个try语句可以匹配多个catch语句,系统会依照先后顺序依次对其进行处理。

            警告:处理子类异常的catch语句必须位于父类异常catch语句之前,否则子类异常catch语句将无法响应。

                       比如:IOException和Exception就存在继承的关系

//下面的catch语句的层次关系是不可取的
int a;
int b=0;
int c=1;
try{
  a=c/b;
}catch(Exception e){     //  1 父类异常处理
  System.out.println("异常处理!");
}catch(ArithmeticException e){   //2 子类异常处理
  System.out.println("算术异常处理!");
}


      (3) Java还提供多异常捕获功能,即一个catch语句捕捉多种的异常,不同异常之间以“|”隔开。

int a;
int b=0;
int c=1;
try{
  a=c/b;
}catch(ArithmeticException|ClassCastException e){ 
  System.out.println("异常处理!");
}


2、finally语句

    (1) 配合try{ ... }catch{ ... }使用,主要用于执行一些必要的语句(无论是否产生异常),例如:关闭数据库、

             关闭数据流等操作,以释放宝贵的系统资源。

//下行可能产生异常,例如在D:/Java/命令行示例/a.txt文件不存在的情况下
//FileInputStream 类 用于处理以文件为输入源的数据流
    FileInputStream fin=new FileInputStream("D:/Java/命令行示例/a.txt");
    try{
      size=fin.available();//判断可读取的字节数
      System.out.println("file size="+size);  
    }catch(FileNotFoundException e){
      System.out.println("File not found!");
      throw e;
      
    }finally{
      fin.close();
    }

     (2)即使try语句块要通过return语句退出,Java也会保证执行finally代码段。

3、throw语句和throws语句

     (1)throw语句用于之处程序当前行存在的异常,其后面的代码将不予执行;

              throws语句出现在方法头的后面,用于抛出方法可能会出现的异常给其调用者。

     (2)两者都是“消极”的处理异常的方法,真正处理异常的是改方法的调用者。

class showFile{
  void showInfo() throws IOException{
    int size=0;
//下行可能产生异常,例如在D:/Java/命令行示例/a.txt文件不存在的情况下
//FileInputStream 类 用于处理以文件为输入源的数据流
    FileInputStream fin=new FileInputStream("D:/Java/命令行示例/a.txt");
    try{
      size=fin.available();//判断可读取的字节数
      System.out.println("file size="+size);  
    }catch(FileNotFoundException e){
      System.out.println("File not found!");
      throw e;
      
      System.out.println("异常抛出后!");//这一句将不予执行
      
    }finally{
      fin.close();
    }
  }
}


 


 

 

 

 

 

    

Java异常处理的五个关键字

(..•˘_˘•..) 版权声明:转载原创文章请以超链接形式请注明原文章出处,尊重作者,实在不易! (..•˘_˘•..)异常:异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理...
  • bpgdzfj
  • bpgdzfj
  • 2018-02-09 14:15:35
  • 48

Java异常处理机制的简单原理和应用

异常是指Java程序运行时所发生的非正常情况或者错误,就像人们正常生活发生的意外事件、在什么地点, 可以 用一个对象来表示,Java采用面向对象的方式来处理异常,把程序中发生的每个异常都封装到一个对象...
  • JavaReact
  • JavaReact
  • 2017-07-10 11:17:27
  • 1212

JAVA的异常处理机制

  • 2010年04月29日 18:27
  • 52KB
  • 下载

Java异常处理机制 try-catch-finally

异常处理机制入门理解
  • qq_25827845
  • qq_25827845
  • 2016-04-06 17:34:01
  • 2916

Java中的异常处理机制的简单原理?

答:    1:java常见异常架构图          1、  粉红色的是受检查异常(checked exception),其必须被try{}catch语句块所捕获,或者在方法签名里通过t...
  • goutiantian
  • goutiantian
  • 2015-10-28 00:34:07
  • 1329

Java 中的异常处理机制的简单原理和应用?

当 JAVA 程序违反了 JAVA 的语义规则时,JAVA 虚拟机就会将发生的错误表 示为一个异常。违反语义规则包括 2 种情况。一种是 JAVA 类库内置的语义检查。 例如数组下标越界,会引发 ...
  • uniquewonderq
  • uniquewonderq
  • 2015-06-09 14:20:12
  • 1022

java的异常处理机制详解

Java异常的处理主要依赖于try,catch,finally,throws,throw这五个关键字。下面分别介绍它们:...
  • zx64881926
  • zx64881926
  • 2016-08-24 14:35:19
  • 1308

全面掌握Java的异常处理机制 .doc

  • 2009年03月04日 21:48
  • 35KB
  • 下载

黑马程序员_毕向东JAVA基础_设计模式&异常处理机制

---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ---------------------- 单例设计模式 设计模式:解决某...
  • u010710575
  • u010710575
  • 2013-06-21 15:13:02
  • 1108
收藏助手
不良信息举报
您举报文章:Java 异常处理机制(一)
举报原因:
原因补充:

(最多只允许输入30个字)