在java里面,自定义一个异常,必须继承来自Exception异常总类来表示.,下面我们来看看代码吧。
package denoerror;
public class NotHuman extends Exception {
//定义一个异常来,继承来自异常总类
public NotHuman(String message) {
//使用super调用父类的 构造方法。
super(message);
}
}
从代码可以看到的就是,我们的异常类NotHuman继承来自了异常总类Exception,添加了它的构造方法,完成了初始化的操作
然后使用Super关键字来实现了对父类方法的调用。传入我们的参数,因为在抛出异常的代码里面,需要参数。
下面来看看我们的抛出异常的主要代码.
package denoerror;
public class deno5 {
public static void main(String[] args) {
String TypePlayer="Mobkey";
if(!TypePlayer.equals("Human")) {
try {
throw new NotHuman("有非人类参加比赛"+TypePlayer); //抛出一个异常,对异常进行处理
} catch (NotHuman e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
在主要码里面,我们首先判断参加的选手是否是人类,如果不是,就会抛出一个异常.下面的代码,就是对异常进行处理的代码。
直接使用快捷按键alt+shift+z来实现对代码的补充。
从这个代码里面,我们可以看到的就是自定义的异常类必须继承来自Exception类,也就是我们的异常总类。
其次就是Super关键字的使用。这点需要大家的掌握。