Exception类:
构造函数:1.public Excepiton(); 2.public Exception( String s );
若干方法:
1.String getMessage() 返回描述异常对象的字符串
2.public String toString() 返回描述当前异常对象的详细信息
3.public void printStackTrace () 完成在当前的标准输出上打印输出当前异常对象的堆栈使用轨迹,也即程序先后调用执
行了哪些对象或类的哪些方法,使得运行过程中产 生了这个异常对象
系统定义的运行异常
ClassNotFoundException
未找到欲装载使用的类
ArrayIndexOutOfBoundsException 数组越界使用
FileNotFoundException 未找到指定的文件或目录
IOException 输入、输出错误
NullPointerException 引用空的尚无内存空间的对象
ArithmeticException 算术错误如除数为0
InterruptedException 线程在睡眠、等待或其他原因暂停时被其他线程打断
UnknownHostException 无法确定主机的IP地址
SecurityException 安全性错误,如Applet欲读写文件
MalformedURLException URL格式错误
用户自定义异常
1.声明一个新的异常类,使之以Exception类或其他某个已经存在的系统异常类或用户异常类为父类
2.为新的异常类定义属性和方法,或重载父类的属性和方法,使这些属性和方法能够体现该类所对应的错误信息
抛出异常
Java程序运行时如果引发了一个可识别的错误,就会产生一个与该错误相对应的异常类对象,这个过程叫异常的抛出
1.系统自动抛出异常——所有的系统定义的运行异常都可以由系统自动抛出
2.语句抛出的异常——用户自定义的异常必须在自定义出错的地方借助于throw语句抛出自定义的异常类对象。
throw语句语法:
修饰符 返回类型 方法名(参数列表)
throws 异常类名列表
{
..........
throw 异常类对象
..........
}
注意::(1)一般这种抛出异常的语句应该被定义为在满足一定条件时执行(2)含有throw语句的方法,应该在方
法头定义中增加 “
throws 异常类名列表”部分
异常的处理
在try语句块中添加可能产生错误的代码段或者调用可能抛出异常方法的语句块。
用catch语句块捕获及处理try块中的异常情况。
1.捕捉异常——catch
catch(异常类名 异常形式参数名)
{
异常处理语句组
}
2.多异常的处理——使用多个catch块
3.finally 关键字是对 Java 异常处理模型的最佳补充。finally 结构使代码总会执行,而不管有无异常发生。使用 finally 可以维护对象的内部状态,并可以清理非内存资源。