异常在子父类覆盖中的体现
1.子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常或该异常的子类
2.如果父类方法抛出多个异常,那么子类在覆盖该方法时,只能抛出父类异常的子集(比如父类抛AException,BException,CException,子类只能抛和父类一样或比父类少A,或A,B异常,不抛也可以)
3.如果父类或者接口中没有异常抛出,那么子类在覆盖方法时,也不可以抛出异常
如果子类方法发生异常了,久必须要进行try处理,绝对不能抛
class AException extends Exception
{
}
class BException extends AException
{
}
class CException extends Exception
{
}
class Fu
{
void show() throws AException
{
}
}
/*Exception
|AException
|BExcepiton
|CException
*/
class Zi extends Fu
{
void show() throws AException//或抛BExcepiton,不可以抛CException
}
class ExceptionDemo7
{
public static void main(String[] args)
{
}
}
网友评论