java - Sonar 重​​命名此方法;父类中有一个 "private"方法同名

标签 java sonarqube software-quality

当我们使用与父私有(private)方法相同的名称时,Sonar 提示类中的私有(private)方法名称。在代码质量上定义一个与父私有(private)方法同名的私有(private)方法有什么缺点?

或者我们是否需要将其归类为误报

最佳答案

在我看来,这是因为这可能会造成混淆。考虑下面,阅读评论:

class Child extends Super{
   public void myMethod() {
     System.out.println("in child");
   }
 }

 class Super{
   public static void main(String[] args) {
    Super s = new Child(); 
    s.myMethod(); // At this point you might expect myMethod of child to be called if it'll call the Parent's since it is private.
  }
   private void myMethod() {
     System.out.println("in super");
   }
 }

关于java - Sonar 重​​命名此方法;父类中有一个 "private"方法同名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54150765/

相关文章:

java - 如何同时更新缓存的 Java 对象

java - TestNG:确定下一步是哪些测试方法

java - 在两个列表之间执行 'contains' 的有效方法

gradle - 如何在 Gradle 中为多模块项目聚合 Sonar 报告?

jenkins - 如何正确使用Jenkins警告下一代插件的三个步骤?

javascript - 来自 codacy 的 Eslint 配置文件

Linux静态代码分析工具对比?

java - 禁用 osgi 临时文件夹

ldap - Sonarqube 5.2,LDAP 插件 1.5 : users losing privileges at their next login?

configuration - 在 Sonar 上配置小部件不起作用