在 .NET 中,可以为特定超类中的方法指定“mustoverride”属性,以确保子类重写该特定方法。
我想知道是否有人有一个自定义的java注释可以达到相同的效果。本质上,我想要的是推动子类覆盖超类中的方法,该方法本身具有一些必须运行的逻辑。我不想使用抽象方法或接口,因为我希望在超级方法中运行一些常见的功能,但或多或少会产生编译器警告/错误,表示派生类should覆盖给定的方法。
我不太明白为什么你不想使用抽象修饰符——这是为了强制子类实现,并且只需要用于某些方法,而不是全部。或者也许您正在考虑 C++ 风格的“纯抽象”类?
但许多 Java 开发人员没有意识到的另一件事是,也可以重写非抽象方法并将它们声明为抽象方法;喜欢:
public abstract String toString(); // force re-definition
所以即使java.lang.Object
已经定义了一个实现,您可以强制子类再次定义它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)