2

在我的代码中,我对“死代码”有很多警告。问题是我有这样的代码

public void myMethod(final String text) {
    if(CONST_FLAG && something == true) {
       doMyMethod(text);
    }
}

CONST_FLAG 是一个构建配置常量。当 CONST_FLAG 为假时,我会收到死代码的警告。如果我说我想抑制警告,当标志为真时,我会看到“不必要的抑制”警告。

有没有办法避免它?

4

3 回答 3

5

您可以使用以下路径将 Eclipse 配置为在某些情况下不向您显示警告,例如Dead Code,Unused Imports等:-

转到 Windows -> 首选项 -> Java -> 编译器 -> 错误/警告 -> 潜在的编程问题 -> 设置Dead Code为忽略。

于 2012-11-26T16:21:02.360 回答
0

当您的 CONST_FLAG 为假时,您不能在其他部分进行工作。像这样

当您像下面这样说时,我收到了死代码警告

if(false) {
       doMyMethod(text);
    }

但就像下面我没有收到那个警告,

  private static final boolean CONST_FLAG = false;

if(CONST_FLAG) {
       doMyMethod(text);
    }
于 2012-11-26T16:32:03.003 回答
0

这就是我修复它的方法:

public void myMethod(final String text) {
   boolean shouldDotit = something == true && CONST_FLAG;
   if(shouldDoIt) {
      doMyMethod(text);
   }
}

所以我需要使用局部变量并反转布尔检查的顺序

于 2012-11-26T17:04:50.060 回答