class AException extends Exception
{}
class BException extends AException
{}
class Fu
{
void show() throws AException
{}
}
class Zi extends Fu
{
void show() throws BException
{}
}
上面这个程序中,为什么子类覆盖了父类的方法时,抛出异常只能是AException或是BException?
如果B异常里面除了有A异常里面的方法还有自己的特有方法时,为什么A异常还能处理它,A异常不是只能执行子类中与自己共有的方法吗?
哪位大神帮忙分析一下,这个问题想了半天还是有点晕,主要是为什么Zi类中抛出B异常会没问题。
|