编译时异常&运行时异常
- A: 编译时期异常:是Exception的子类,非RuntimeExcpetion的子类,在编译时期必须处理
- B:RuntimeException和他的所有子类异常,都属于运行时期异常。NullPointerException,ArrayIndexOutOfBoundsException等都属于运行时期异常.
- 运行时期异常的特点:
- 方法中抛出运行时期异常,方法定义中无需throws声明,调用者也无需处理此异常
- 运行时期异常一旦发生,需要程序人员修改源代码.
package com.itheima_01;
import java.io.FileWriter;
import java.io.IOException;
/*
* 异常的分类:
* 运行时期异常:RuntimeException的子类就是运行时期异常,在编译时期可以自由选择处理或者不处理
* 编译时期异常:在编译时期必须处理,是Exception的子类,并且是非RuntimeException的子类
*/
public class ExceptionDemo6 {
public static void main(String[] args) {
System.out.println(2 / 0);//运行时期异常
String s = null;
System.out.println(s.length());//运行时期异常
try {
FileWriter fw = new FileWriter("a.txt");//编译时期异常
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
网友评论