2.Throwable是所有异常类的超类.
3.当程序可能出现错误(异常)的时候应该使用,使用关键捕获异常进行处理.
4.捕获异常结构如下:
public void test() {
int num1 = 10;
int num2 = 0;
try {
System.out.println(num1 / num2); // try可能出现错误的语句块
} catch (Exception e) { // 异常类型 并实例化一个异常类型e,用来对出现的异常进行说明
e.printStackTrace(); // 如果出现错误执行catch里面内容,否则跳过catch语句块
} finally {
System.out.println("永远都会被执行,(system.exit)特殊情况除外,");// 无论是否出现异常都会执行finally语句块
}
}
5.有的函数声明定义的时候直接抛出了异常,name在调用的时候就需要捕获异常或者继续抛出异常.
public static void main(String[] args) {
try {
test(); //调用这个方法就必须捕获异常或者继续抛出异常
} catch (Exception e) {
e.printStackTrace();
}
}
//方法定义的时候抛出了异常
public static void test() throws Exception {
int num1 = 10;
int num2 = 0;
System.out.println(num1 / num2);
}
6.自定义异常类,必须继承一个异常的父类:
public class ExceptionTest extends Exception{
@Override //这个是注解,表示这是重写的方法
public void printStackTrace() {
System.out.println("自己定义的异常类");
System.out.println("尝试一下如果程序没有出现异常,强制抛出这个自定义异常,可不可以捕获");
}
}
7.尝试使用(捕获)自定义的异常类
public class Main {
public static void main(String[] args) {
try {
test(); //调用这个方法尝试捕获自定义异常
} catch (ExceptionTest e) {
e.printStackTrace(); //自定义的异常类重写了printStackTrace这个方法
}
}
//继续往上抛出异常
public static void test() throws ExceptionTest{
throw new ExceptionTest(); //强制产生一个自定义的异常并往上抛
}
}
如有错误欢迎批评指出!更多相关问题请访问PHP中文网:JAVA视频教程