死亡代码(085400为什么叫死亡代码)
死亡代码
系列文章目录:
使用Fortify对代码进行静态分析(系列文章)
未使用的方法(不再使用的方法)
示例:
Fortify解释道:
Import中的ThemethodcheckLevel()..csisnotreachablefromanymethodoutsidetheclass。itis deadcode . deadcode isdefinedascodethatisneverdirectlyorindlyexecutedbyapaublicmethod,orisonlycalledfromotherdeadcode。
强化示例2:
在这个类中,两个私有方法相互调用,但都没有被其他类调用。他们是死亡代码。
adeadmethodmayindicaeabugindispatchcode。
死亡方法可能意味着分支代码有BUG。
强化示例:
如果methodsflaggedasdeadnamedgetwitch()in class也包含thefollowingdispatchmethod,则可能是因为复制并粘贴错误。“w”case应该返回getswitch()而不是GetMummy()。
如果类中的死亡方法GetWitch()也有上述分支代码逻辑,有可能这是复制粘贴代码导致的错误。当大小写匹配w时,应该调用GetWitch()方法,而不是getmum()方法。
一般来说,你应该删除代码。Torepairdeadcode,executedeadcodedirectlyorindlythroughapublicmethod . deadcode causes additionalcomplexityandmaintenanceburdenwithouttributingtofunctionalityofprogram。
通常应该修复或移除死亡代码,可以通过在公共方法中直接或间接执行此方法来修复。死亡代码增加了复杂度和维护工作量,不利于系统的功能发挥。
thisisemaybeafalsepositiveiftheprogramusesreflectiontoaccessprivatemethods。(Thisisanon-standard practice . privatemethodshatareonlyinvokedviareflectionshould记录良好。)