Findbugs有一个相关的错误pattern:
IP:参数在进入时死亡
一个方法,但被覆盖
(IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN)
此参数的初始值为
忽略了,参数是
在这里覆盖。这经常表明
一个错误的信念,写到
该参数将被传回
来电者。
但是,我不认为这会捕获在某处读取参数后覆盖参数的实例。
另一方面,看起来PMD确实有rule,这正是您所寻找的:
AvoidReassigningParameters:
将值重新分配给参数是a
可疑的做法。使用临时的
而是局部变量。
如果这对您不起作用,那么PMD人员会有list个更多静态检查程序,包括免费和商业版,您可以查看。