Java子类的超类方法



子类是否需要重写超类的每个方法,或者不是必须重写,但子类可以重写超类中的一些方法。我有点困惑。

子类不需要覆盖任何父方法,即使它们可以。强制子类重写方法的唯一方法是使该方法抽象(父类也必须是抽象的)。

如果子类希望为其继承的方法的调用引入唯一行为,则必须覆盖该方法

最常见的情况是:toStringequalshashCode都有资格被所有自定义类覆盖,因为您的自定义类不想利用Object#toStringObject#equalsObject#hashCode,它们对您的自定义实现都"毫无帮助"。

如果子类不希望为其继承的方法的调用引入唯一行为,那么这是不必要的。您可以依赖父类的行为。

如果您的父类是abstract,那么您别无选择,只能实现父类选择不实现的方法。

如果您正在实现一个接口,则适用与抽象类相同的原则-因为该接口本身不实现任何东西,所以您必须实现该接口规定的方法。

最新更新