JAVA异常:重写父类方法异常的处理
在继承父类的方法后,子类在重写方法时,可能会产生异常
一、父类的方法,如果抛出异常,子类重写时可以抛也可以不抛出异常。但如果子类要抛出异常,则子类抛出的异常的类的等级不得高于父类的异常等级。
父类抛的异常和子类抛的异常一模一样:OK
父类抛的异常等级大于子类抛的异常等级:OK
父类抛的异常等级小于子类抛的异常等级:NO
父类抛的异常等级与子类抛的异常等级平级:NO
===父类====
public calss Fu{
public void function()throws Exception{
...
}
}
===子类===
public class Zi extends Fu{
public void function()throws Exception{}
}
二、父类的方法没有异常抛出,子类重写以后也不能抛出异常。
父类不抛,子类不能抛
二、父类的方法没有异常抛出,但子类调用了其它方法,而且此方法抛了异常(子类调用了有异常的方法),子类方法也不可以往外抛,只能用try catch处理。
===父类===
public class Fu{
public void function(){}
}
===子类===
public class Zi extends Fu{
public void function(){ //父类方法没有抛异常,子类也不能抛,只能用try catch处理
try{
method();
}catch(Exception ex) {
}
}
}
===有异常的方法===
public static void method()throws Exception{
}
浙公网安备 33010602011771号