黑马程序员技术交流社区

标题: 被覆盖的方法,可以抛出异常么? [打印本页]

作者: D.reamJA    时间: 2014-8-5 09:05
标题: 被覆盖的方法,可以抛出异常么?
子类覆盖了父类的方法,该方法能抛出异常么?
作者: 250669200@qq.co    时间: 2014-8-5 09:26
如果父类该方法没有异常,子类覆盖其方法,有异常时只能try,不能抛
作者: a6511631    时间: 2014-8-5 09:43
不能,只能抛出与父类方法相同的异常,或父类方法异常的子类异常
作者: 200米王朝    时间: 2014-8-5 09:44
重写方法需要抛出与原方法所抛出异常类型一致异常或不抛出异常。

抛出的异常类型不能比父类抛出的异常类型更宽泛。
作者: justin1258    时间: 2014-8-5 10:21
可以抛出未检查异常,只有父类方法允许抛出已检查异常的时候子类才可以抛出该已检查异常
作者: 叶飞翔    时间: 2014-8-5 10:44
a6511631 发表于 2014-8-5 09:43
不能,只能抛出与父类方法相同的异常,或父类方法异常的子类异常

嗯嗯,确实啊。
作者: —Jimmy—    时间: 2014-8-5 10:55
如果父类没有抛出异常子类是不能抛出比父类多的异常的,好像是这么回事.
作者: star5603    时间: 2014-8-5 15:56
父类没抛,子类是不能抛的,只能在内部去try-catch
作者: hmid    时间: 2014-8-6 00:28
4楼说的对哦
作者: zhangxun    时间: 2014-8-6 00:33
提问的很不错啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2