【问题标题】:Java: Force subclasses to override methods of the SuperclassJava:强制子类覆盖超类的方法
【发布时间】:2011-11-14 21:52:18
【问题描述】:

如何编写方法并强制子类覆盖此方法。在 Eclipse 中,它应该显示在 Quick-Fix 对话框中:“添加未实现的方法”。

谢谢

【问题讨论】:

    标签: java methods overriding superclass


    【解决方案1】:

    如何编写方法并强制子类重写此方法。

    将方法声明为abstract:

    Eclipse 将为所有(未实现的)抽象方法和接口方法提供“添加未实现的方法”选项。

    【讨论】:

      【解决方案2】:

      只需在基类中将方法声明为abstract。然后将强制所有子类实现它。或者,您也可以使用interface 而不是具体的类,这只是一个协议,即定义的方法将被实现。任何一个都可以,这取决于您的需求。

      【讨论】:

        【解决方案3】:

        您可以通过创建abstract 方法来做到这一点(不提供默认实现)。

        【讨论】:

          【解决方案4】:

          或者,如果您不希望自己的类成为抽象类,则可以在要强制覆盖的方法处抛出自己的 MustOverrideException。

          【讨论】:

            【解决方案5】:

            将方法声明为abstract

            【讨论】:

              猜你喜欢
              • 2011-05-21
              • 2017-11-18
              • 1970-01-01
              • 2021-05-04
              • 2018-03-18
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多