@Override注释的目的是什么?

@Override注释的目的是什么?,第1张

@Override注释的目的是什么?

假设您有:

public class Foo{    public void bar(String x, String y) {}}public class Foo2 extends Foo{    public void bar(String x, Object y) {}}

确实
打算

Foo2.bar
覆盖
Foo.bar
,但是由于签名中的错误,它不是这样做的。如果使用
@Override
,则可以让编译器检测故障。它 还会
向任何 阅读 代码的人表明这将覆盖现有方法或实现接口-为他们提供有关当前行为以及重命名该方法可能产生的影响的建议。

另外,如果某个方法在 指定的 情况下
覆盖了某个方法,则编译器可能会向您发出警告

@Override
,这意味着您可以检测是否有人在不知不觉的情况下将具有相同签名的方法添加到了超类中-您可能
不想 覆盖新方法,因为您现有的方法可能具有不同的语义。虽然
@Override
没有提供一种“超越”方法的方法,但至少强调了潜在的问题。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5016861.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-15
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存