12.1异常的基本概念12.2异常的处理机制12.3异常类的类层次.ppt

12.1异常的基本概念12.2异常的处理机制12.3异常类的类层次.ppt

12.1异常的基本概念12.2异常的处理机制12.3异常类的类层次.ppt

第12章 Java例外处理 12.1 异常的基本概念 12.2 异常的处理机制 12.3 异常类的类层次 12.1 异常的基本概念 异常(Exception)是程序执行过程中出现的非正常事件,即各种意外情况。比如说: ① 用户输入出错 ② 所需文件找不到 ③ 运行时磁盘空间不够 ④ 内存不够 ⑤ 算术运算错 (数的溢出,被零除…) ⑥ 数组下标越界 …… 例12.1 public class ExceptionDemo { public static void main(String args[]) { int x=100; System.out.println(The result is+x/10); System.out.println(Divided by zero: +x/0); } } 当我们对其编译后运行时,其对应的结果如下: c:\java\binjava ExceptionDemo The result is10 Exception in thread main java.lang.Arithmetic Exception: / by zero at Exception Demo.main(Exception Demo.java:5) 12.2 异常的处理机制 一旦程序在执行的过程中出现异常,往往有两种处理方式: (1) 当程序出现错误的时候,系统将终止程序的运行。 (2) 当程序出现错误时,采用捕捉-抛出(catch-throw)的面向对象编程方式。该种方式是当程序运行出错时,系统和程序抛出各种标准类型的错误,程序捕捉该错误并进行相应处理。 12.2.1 异常的直接捕获与处理:try-catch try-catch语句构成Java对异常直接处理的基本处理单元,其一般语法如下: try { … } catch (ExceptionClass1 c) { … } catch (ExceptionClass2 d) { … } try块管理其所包含的语句并定义与之相关的异常指针范围,它的后面必须至少接一个catch语句。catch语句块负责处理各对应类型的异常。 例12.2 import java.io.*; public class ExceptionDemo1 { public static void main(String args[]) { int i; FileInputStream fis = new FileInputStream(file_in.txt); FileOutputStream fos=new FileOutputStream(file_out.txt); while(i=fis.read())!=-1) fos.write(i); fis.close(); fos.close(); } } 两种异常程序员必须捕获,即File Not FoundExcetion和IOException。 例12.2可改写为 例12.3 import java.io.*; public class ExceptionDemo1 { public static void main(String args[]) { int i; try { FileInputStream fis=new FileInputStream(file_in.txt); FileOutputStreamfos=new FileOutputStream(file_out.tx t); while((i=fis.read())!=-1) fos.write(i); fis.close(); fos.close(); } catch (FileNotFoundException e){ System.out.println(The error is: +e.getMessage()); }

文档评论(0)

1亿VIP精品文档

相关文档