Java:如何强制给定的受保护方法被子类重载?
发布时间:2020-05-24 15:10:21 所属栏目:Java 来源:互联网
导读:父亲班不是也不能抽象. 重载的方法是受保护的,因此接口不能在那里使用. 考虑到这两个限制是有可能吗? 你不能强制该方法被覆盖 – 这是抽象方法(你所说的不是一个选项). 一种可能性是使基类中的方法抛出UnsupportedOperationException.然后,子类必须覆盖它,以
|
父亲班不是也不能抽象.
考虑到这两个限制是有可能吗? 解决方法你不能强制该方法被覆盖 – 这是抽象方法(你所说的不是一个选项).一种可能性是使基类中的方法抛出UnsupportedOperationException.然后,子类必须覆盖它,以防止抛出错误.这样,您至少可以检测到该方法是否已被覆盖. 例如: public class Father {
public void method ( ) {
throw new UnsupportedOperationException( );
}
}
public class Child1 extends Father {
}
public class Child2 extends Father {
public void method ( ) {
// Do something useful here...
}
}
调用Child1.method()将抛出UnsupportedOperationException,表示它没有覆盖父的方法().调用Child2.method()不会抛出异常,这意味着它已经覆盖了method(). (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
