【问题标题】:java - Should toString() be written as @Override?java - toString() 应该写成@Override 吗?
【发布时间】:2015-06-05 02:21:50
【问题描述】:

我知道在 Java 中为对象覆盖 equals()hashCode() 时,您会包含 @Override 标记,但我似乎找不到任何说明在覆盖 @987654324 时应该执行相同操作的文档@--不应该是一样的,因为它们都是继承的Object方法吗?

【问题讨论】:

    标签: java overriding tostring


    【解决方案1】:

    无论何时重写超类方法,都应始终包含注释。

    【讨论】:

    • 注意:这是应该而不是必须,但从长远来看它会有所帮助,所以无论如何都要这样做。
    【解决方案2】:

    当然。使用@Override 注释从来都不是必要,但它很有帮助。来自https://docs.oracle.com/javase/tutorial/java/annotations/predefined.html

    虽然在重写方法时不需要使用此注解,但它有助于防止错误。如果标有@Override 的方法未能正确覆盖其超类之一中的方法,则编译器会生成错误。

    【讨论】:

      【解决方案3】:

      您应该使用@Override 注释 toString(),尽管法律上没有这样的要求。注解@Override 防止程序员错误地覆盖超类方法;如果覆盖不正确,则会发生编译时错误。

      我们的理念是在错误发生后尽快检测到错误,最好是在编译时。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-09-17
        • 2012-02-05
        • 1970-01-01
        • 2020-02-04
        • 1970-01-01
        • 2011-02-26
        • 2014-12-28
        相关资源
        最近更新 更多