java覆盖问题。覆盖父类方法抛出异常问题

重写方法需要抛出与原方法所抛出异常类型一致异常或不抛出异常。子类抛出的异常类型不能比父类抛出的异常类型更宽泛!能帮忙解释下上面两句话吗?另有下面疑问,我在子类中调用父类的... 重写方法需要抛出与原方法所抛出异常类型一致异常或不抛出异常。

子类抛出的异常类型不能比父类抛出的异常类型更宽泛!

能帮忙解释下上面两句话吗?

另有下面疑问,我在子类中调用父类的该方法,抛出父类的异常。但如果我将这个异常catch住,在catch子句中心抛出一个比父类型更宽泛的异常。感觉应该也可以。

还有我查到说抛出runtime异常没有问题。运行时异常虽然可以不用捕获。但如果其本身已经超出了父类的范围呢?

忘高手讲解。
明白后必有重谢!!
展开
 我来答
百度网友5195152
2009-10-19 · TA获得超过1164个赞
知道大有可为答主
回答量:1314
采纳率:0%
帮助的人:730万
展开全部
重写方法要抛出被重写方法抛出异常或者这个异常的子类

在catch子句中心抛出一个比父类型更宽泛的异常
这样也不行
try{
...
} catch(Exception e) {
throw new Exception(e);
}
这个时候,这段代码所在方法必须声明抛出异常
public void methodA throws Exception

runtime异常和Exception不一样东西
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式