ch异常处理

上传人:xy****7 文档编号:54925207 上传时间:2018-09-22 格式:PPT 页数:25 大小:114KB
返回 下载 相关 举报
ch异常处理_第1页
第1页 / 共25页
ch异常处理_第2页
第2页 / 共25页
ch异常处理_第3页
第3页 / 共25页
ch异常处理_第4页
第4页 / 共25页
ch异常处理_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《ch异常处理》由会员分享,可在线阅读,更多相关《ch异常处理(25页珍藏版)》请在金锄头文库上搜索。

1、1,异常和异常类 异常处理 自定义异常类,第六章 异常处理,2,软件程序会发生错误/出现问题 从外部问题(硬盘、网络故障等)到编程错误(数组越界、引用空对象等) 两类错误 致命错误 内存空间不足等错误(Error)导致程序异常中断 程序不能简单地恢复执行 非致命错误 数组越界等异常(Exception)导致程序中断执行 程序在修正后可恢复执行,异常(Exception),3,异常引例1,public class TestException01 public static void main(String args)int a=68;int b=0;System.out.println(a/b)

2、; ,4,异常引例2,public class TestException02 public static void main(String args)int x=Integer.parseInt(args0);int y=Integer.parseInt(args1);System.out.println(“x+y=“+(x+y); ,5,异常事件 程序运行过程中发生的、打断程序正常执行的事件。 Java系统中已定义或用户定义的某个异常类的对象 一个异常类代表一种异常事件 Java语言利用异常来使程序获得处理错误的能力,异常,6,Java系统中定义的用来处理异常的类 异常类的结构,异常类,O

3、bject,属于java.lang包,7,异常类(Exception)的方法 构造方法 public Exception() public Exception(String s) 常用方法 public String toString()用来返回描述异常对象信息的字符串 public String getMessage()用来返回描述当前异常对象的详细信息 public void printStackTrace()用来在屏幕上输出当前异常对象使用的堆栈的轨迹,异常类(Exception),8,异常和异常类 异常处理 创建异常,第六章 异常处理,9,Java对异常的处理机制当程序中出现了异常情况

4、时,即抛出一个异常对象,异常处理程序捕获这个异常对象,并对它进行处理。如果系统中找不到相应的异常处理程序,则由Java默认的异常处理程序处理,即在输出设备上输出异常信息,同时程序停止运行。,异常处理,10,异常处理的几种方式 1. 程序运行时异常(RuntimeException)通常不做处理,由Java虚拟机自动处理 2. 使用try-catch-finally语句捕获异常 3. 使用throw子句抛出异常,异常处理,11,1. 程序中运行时异常(RuntimeException)的处理运行时异常是Java程序运行时由系统检测到,可能在程序的任何部分发生,数量多,逐个处理工作量大,影响程序的

5、可读性及执行效率。因此,Java编译器允许程序不对运行时异常处理,将它交给默认的异常处理程序,一般的处理方法是在屏幕上输出异常的内容以及异常的发生位置。运行时异常的种类很多,常用的有ArithmeticException,NumberFormatException,ArrayIndexOutOfBoundsException等。,异常处理,12,public class ExceptionDemo1public static void main(String args)int i=0;String str=“Applet.“,“Application.“;while (i3) System.o

6、ut.println(stri);i+;System.out.println(“OK“); ,13,public class ExceptionDemo2 public static void main(String args)Exception e;e=new Exception(“NumberFormatException的例子“); System.out.println(e.toString();Integer i=new Integer(“23o5“);System.out.println(“Ok!“); ,14,2.使用try-catch-finally语句捕获异常称异常处理器(ex

7、ception handler) try catch finally,异常处理,15,try-catch-finally的语句格式:try 程序段 catch ( 异常类名1 异常对象名1 ) 异常处理代码1 catch (异常类名2 异常对象名2 ) 异常处理代码2 finally 最终异常处理代码,异常处理,16,class ExceptionHandlerpublic static void main(String args)int d,a;try /监控可能产生异常的代码块d=0;a=68/d;System.out.println(“本字符串将显示不到。“); catch(Arithm

8、eticException e) System.out.println(e.getMessage();System.out.println(“产生用0除错误。“);System.out.println(“捕获语句后。“); ,异常处理器示例,17,finally语句块 finally语句块在异常处理中是必须执行的语句块。 通常用于:清理现场,关闭打开的文件,关闭网络连接等Exam6_4.java,异常处理,18,异常处理,使用throw子句抛出异常 把异常抛到调用发生异常事件方法的其它方法中处理 发生异常事件的方法说明的格式如下:() throws throw ; /抛出异常的语句格式,19,

9、抛出异常示例,public class ThrowDemo void inException() throws ArithmeticExceptionArithmeticException e=new ArithmeticException();throw e;public static void main(String args)ThrowDemo s=new ThrowDemo();trys.inException(); catch(ArithmeticException e) System.out.println(“来自inException方法的异常:“+e); ,Exam6_5.ja

10、va,20,异常和异常类 异常处理 自定义异常类,第六章 异常处理,21,两大类异常及处理 使用Java语言已有的异常异常的抛出/捕捉 创建自已的异常异常的抛出/捕捉,自定义异常类,22,自定义异常 自定义异常类必须是java.lang.Exception类的子类 java.lang.Exception类的两个构造方法Exception() Exception()(String message) 自定义异常类可以定义自已的构造方法 自定义异常类可以不定义构造方法SimpleException() super(); ,自定义异常类,23,创建异常类格式如下:class extends 父异常类可以是Exception类,Exception类的子类和用户已经定义的异常类,自定义异常类,24,抛出异常可能产生异常的方法定义格式如下:,创建异常, () throws throw ;,25,创建异常示例例6-6 自定义一个数字范围越界异常。编写程序,规定在一定范围内求两个自然数的和,超过规定的范围将产生异常,并进行处理。,创建异常,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号