java-toString()应该写为@Override吗?

java-toString()应该写为@Override吗?,java,overriding,tostring,Java,Overriding,Tostring,我知道,在Java中为对象重写equals()和hashCode()时,会包含@Override标记,但我似乎找不到任何文档说明在重写toString()时也应该这样做--不应该是相同的吗?因为它们都是继承的对象方法?无论何时重写超类方法,都应该包含注释 无论何时重写超类方法,都应该始终包含注释 当然。无需使用@Override注释,但它很有用。发件人: 虽然重写方法时不需要使用此注释,但它有助于防止错误。如果标记为@Override的方法无法正确重写其超类中的方法,编译器将生成错误 当然。无需

我知道,在Java中为对象重写
equals()
hashCode()
时,会包含
@Override
标记,但我似乎找不到任何文档说明在重写
toString()时也应该这样做
--不应该是相同的吗?因为它们都是继承的
对象
方法?

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

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

当然。无需使用
@Override
注释,但它很有用。发件人:

虽然重写方法时不需要使用此注释,但它有助于防止错误。如果标记为@Override的方法无法正确重写其超类中的方法,编译器将生成错误

当然。无需使用
@Override
注释,但它很有用。发件人:

虽然重写方法时不需要使用此注释,但它有助于防止错误。如果标记为@Override的方法无法正确重写其超类中的方法,编译器将生成错误


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


其思想是在错误发生后尽快检测错误,最好是在编译时。

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

其思想是在错误发生后尽快检测错误,最好是在编译时。

注意:这不是必须的,但从长远来看是有帮助的,所以无论如何都要这样做。注意:这不是必须的,但从长远来看是有帮助的,所以无论如何都要这样做。