编程语言
首页 > 编程语言> > java – 检测作为参数传递的对象的更改值

java – 检测作为参数传递的对象的更改值

作者:互联网

我现在正在使用看起来像这样的代码

public String getName(User user) {
     user.setSth(...);
     return user.getName();
}

我认为改变作为参数传递的对象是不好的做法.有没有一种工具可以检测到那种代码?我查看了findbugs,pmd和checkstyle,但找不到任何检查.

附:抱歉的坏榜样.

解决方法:

我认为你已经走在正确的轨道上:你检测这种代码的最佳工具几乎肯定是Findbugs.但是,你可能需要为这种模式编写自己的探测器. Here is an example你将如何编写一个探测器,尽管它并不是你想要的探测器.

警告:我真的不同意副作用吸气剂总是坏的风格.但是,如果你真的想找到那种东西,我会推荐Findbugs.

标签:pmd,java,checkstyle,findbugs
来源: https://codeday.me/bug/20190726/1548308.html