使用Eclipse,我在此Java代码段中遇到了死代码错误:
public void rebirthAction() {
Player p = new Player(null);
Equipment e = new Equipment();
Skills s = new Skills(null);
if ((Equipment.SLOT_SHIELD == -1) && (Equipment.SLOT_WEAPON == -1) && (Equipment.SLOT_CHEST == -1) && (Equipment.SLOT_BOTTOMS == -1) && (Equipment.SLOT_AMULET == -1) && (Equipment.SLOT_BOOTS == -1) && (Equipment.SLOT_HELM == -1) && (Equipment.SLOT_GLOVES == -1))
for (int i = 0; i <= 7; i++) {
p.getSkills().setLevel(i, 1);
p.getSkills().setExperience(i, 0);
//updateRequired = true;
//appearanceUpdateRequired = true;
s.getTotalLevel();
s.getCombatLevel();
Combat.calculateMaxHit(p);
p.getSkills();
rebirthCount++;
}
}
最佳答案
if
语句仅检查来自Equipment类的最终静态值,并且编译器检测到该条件永远不能为true
,因此以下几行是无效代码(不可访问)。