Java方法覆盖规则
以下是在正确覆盖方法时应考虑的规则-
参数列表应与重写方法的列表完全相同。
返回类型应该与超类中原始重写方法中声明的返回类型相同或为子类型。
访问级别不能比重写方法的访问级别更严格。例如:如果将超类方法声明为public,则子类中的重写方法不能为private或protected。
实例方法只有在子类继承的情况下才能被覆盖。
声明为final的方法不能被覆盖。
声明为static的方法不能被覆盖,但可以重新声明。
如果无法继承方法,则无法覆盖该方法。
与实例的超类相同的包中的子类可以覆盖未声明为私有或最终的任何超类方法。
不同包中的子类只能覆盖声明为public或protected的非最终方法。
无论重写方法是否引发异常,重写方法都可以引发任何uncheck异常。但是,重载方法不应抛出比被重载方法声明的异常新的或更广泛的检查异常。与重写方法相比,重写方法可以引发更窄或更少的异常。
构造函数不能被覆盖。
热门推荐
10 财运虎年祝福语简短语
11 单亲爸爸春节祝福语简短
12 狗狗上厕所训练
13 植物种植祝福语简短
14 翻译考试祝福语朋友简短
15 个人周年庆简短祝福语
16 狗狗怎么训练
17 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短