第06章异常处理_第1页
第06章异常处理_第2页
第06章异常处理_第3页
第06章异常处理_第4页
第06章异常处理_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1Java语言程序设计2n异常和异常类n异常处理n创建异常第六章 异常处理3n致命错误n内存空间不足等错误(Error)导致程序异常中断n程序不能简单地恢复执行n非致命错误n数组越界等异常(Exception)导致程序中断执行n程序在修正后可恢复执行(异常)异常(Exception)4n由于非预期的结果导致系统运行时产生异常异常class jex7_9 public static void main(String args) int a = 0;int b = 24/a;java jex7_9Exception in thread main“5n异常类:处理异常的类nJava语言中已定义或用户

2、定义的某个异常类的对象nJava语言利用异常来使程序获得处理错误的能力(error-handling) n每个异常类代表一种异常事件异常类6异常类的结构7nException类n异常类的方法n构造方法npublic Exception()npublic Exception(String s)n常用方法npublic String toString()npublic String getMessage()npublic void printStackTrace()异常类8n异常和异常类n异常处理n创建异常第六章 异常处理9n程序运行时异常n使用try-catch-finally语句捕获异常n使用

3、子句throw说明抛出异常异常处理10n程序运行时异常 由java程序运行时系统监测到,系统将生成的运行时异常对象交给默认的异常处理程序,在标准输出设备上显示该异常的内容和发生的位置,java编译器允许程序不对它进行处理。异常处理11n当一个Java程序的方法产生一个错误,该方法创造一个异常对象并将其交给运行系统n产生一个异常对象并把他交给runtime system 称为抛出异常throwing an exception()n运行系统从错误发生处开始寻找处理错误的程序段n异常处理的选择称为 catch the exception(捕获异常)n捕获异常的过程可以沿方法调用的逆向顺序寻找异常处理

4、12n异常处理器(exception handler)TryCatch()Catch() . . .Finally异常处理13n异常处理器(exception handler)ntry语句块定义了异常处理器的范围ncatch语句块捕捉try语句块抛出的异常nfinally语句块nfinally语句块在异常处理中是必须执行的语句块异常处理14异常处理public class casting public static void main(String args) fun(0);fun(1);fun(2);fun(3);static void fun(int i)System.out.printl

5、n(调用方法:fun(+i+);tryif( i=0)System.out.println(没有异常); else if(i=1)int a=0;int b=10;b/=a;else if(i=2)int m=new int5;m5=100;else if(i=3)String str=56k9;int n=Integer.parseInt(str);catch(ArithmeticException e)System.out.println(捕获异常:+e.getMessage();catch(ArrayIndexOutOfBoundsException e)System.out.print

6、ln(捕获异常:+e.getMessage();catch(NumberFormatException e)System.out.println(捕获异常:+e.getMessage();finallySystem.out.println(处理完毕!);15n异常的抛出 将异常抛出到调用该方法的方法中处理格式:()throws抛出异常语句格式:throw异常处理publicpublic classclass casting publicpublic staticstatic voidvoid main(String args) trytryfun(0);fun(1);catchcatch(Ar

7、ithmeticException e)System.out.println(e.getMessage();staticstatic voidvoid fun(intint i) throwsthrows ArithmeticExceptionSystem.out.println(调用方法);ifif(i=0)System.out.println(没有异常);elseelse ifif(i=1)intint a=0;intint b=10;b/=a;ArithmeticException e=newnew ArithmeticException();throwthrow e;16n异常和异常类n异常处理n创建异常第六章 异常处理17n使用Java语言已有的异常异常的抛出/捕捉n创建自已的异常异常的抛出/捕捉n格式: class extends 父异常类名:Exception类,Exception类的子类或用户已定义的异常类创建异常18异常(Exception)public class NumRanExce

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论