欢迎来到天天文库
浏览记录
ID:56990125
大小:676.00 KB
页数:37页
时间:2020-07-25
《异常处理、垃圾回收机制课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2021/7/281第十一章异常处理、垃圾回收回顾理解接口掌握接口的定义和使用了解内部类的概念目标理解异常的概念运用try块、catch块和finally块处理异常运用多重catch块处理异常运用嵌套try/catch块处理异常运用关键字throw和throws处理异常运用JAVA编写和使用自定义异常垃圾收集的概念finalize方法异常的概念异常:应用程序在运行过程中出现的错误或非正常的意外情况,即虚拟机的通常操作中可能遇到的异常,是一种常见的运行错误。原因:数组下标越界;控指针的访问;试图读取不存在的文件,数学除零等异常处理机制由编译器强制执行Jav
2、a编译器要求方法必须声明抛出可能发生的非运行时异常,但并不要求必须声明抛出未捕获的运行时异常。完全不出错是不可能的,不要刻意回避,要多想意外发生后如何去处理它!异常的概念为什么用异常:运行时发生的错误如果没有异常处理机制,程序将会终止并使所有已分配资源的状态保持不变,这样会导致资源泄露。如:不能收回某个程序分配的内存,以供其它程序使用。什么是异常publicclassExceptionRaised{publicExceptionRaised(){}publicintcalculate(intoperand1,intoperand2){intresult=
3、operand1/operand2;returnresult;}publicstaticvoidmain(String[]args){ExceptionRaisedobj=newExceptionRaised();intresult=obj.calculate(9,0);System.out.println(result);}}OS异常情况异常程序突然终止并将控制交给操作系统在运行时发生的错误异常的分类在Java语言中,“异常”可以看作是一个类,异常类的根是Throwable。Throwable是类库java.lang包中的一个类,并派生出Excepti
4、on类和Error类两个子类异常类的结构:Throwable
5、____Error
6、____Exception
7、____RuntimeException
8、____其它ExceptionError:Java运行系统中的内部错误以及资源耗尽的情况。Exception:RuntimeException及其子类(编程导致的异常)、其它Exception类。异常的分类Error体系:Error类体系描述了Java运行系统中的内部错误以及资源耗尽的情形。应用程序不应该抛出这种类型的对象(一般是由虚拟机抛出)。如果出现这种错误,除了尽力使程序安全退出外,在其他方面是无能
9、为力的。所以,在进行程序设计时,应该更关注Exception体系。Exception体系包括RuntimeException体系和其他非RuntimeException的体系:RuntimeException:RuntimeException体系包括错误的类型转换、数组越界访问和试图访问空指针等等。处理RuntimeException的原则是:如果出现RuntimeException,那么一定是程序员的错误。例如,可以通过检查数组下标和数组边界来避免数组越界访问异常。其他非RuntimeException(IOException等等):这类异常一般是外部
10、错误,例如试图从文件尾后读取数据等,这并不是程序本身的错误,而是在应用环境中出现的外部错误。ExceptionArithmeticExceptionNullPointerExceptionObjectThrowableErrorThreadDeathSQLExceptionRuntimeExceptionNumberFormatException……异常类的层次结构AWTErrorJava异常类文件结束EOFException找不到文件FileNotFoundExceptionI/O异常的根类IOException数字转化格式异常,比如字符串到float
11、型数字的转换无效NumberFormatException不能加载所需的类ClassNotFoundException方法接收到非法参数IllegalArgumentException数组大小小于或大于实际的数组大小ArrayIndexOutOfBoundException尝试访问null对象成员NullPointerException许多java.lang异常的基类RuntimeException异常层次结构的根类Exception算术错误情形,如以零作除数ArithmeticException线程中断InterruptedException说明异常异
12、常的捕获对于异常有两种处理方法:要么捕获异常。通过trycatch方法,catc
此文档下载收益归作者所有