CodeQL 文档

缺少 Override 注释

ID: java/missing-override-annotation
Kind: problem
Security severity: 
Severity: recommendation
Precision: high
Tags:
   - maintainability
Query suites:
   - java-security-and-quality.qls

单击以在 CodeQL 存储库中查看查询

Java 允许您注释旨在覆盖超类中的方法的方法。如果此类带注释的方法未覆盖超类中的方法,编译器需要生成错误,这可以提供免受潜在缺陷的更多保护。带注释的方法还可以提高代码的可读性。

建议

@Override 注释添加到旨在覆盖超类中的方法的方法。

示例

在以下示例中,Triangle.getArea 覆盖 Rectangle.getArea,因此使用 @Override 进行了注释。

class Rectangle
{
    private int w = 10, h = 10;
    public int getArea() { 
        return w * h; 
    }
}
 
class Triangle extends Rectangle
{
    @Override  // Annotation of an overriding method 
    public int getArea() { 
        return super.getArea() / 2; 
    }
}

参考

  • ©GitHub, Inc.
  • 条款
  • 隐私