我看到了link在在这里提问之前,我想知道为什么 SONAR 只提示数组而不提示自定义对象。
因为同样的问题也可能发生在我们在 bean 中声明的自定义对象中。而且,我不同意为什么我们需要复制,因为我们喜欢修改同一个数组,这就是为什么我们有 setter 并且全部正确?
请帮助我理解,SONAR 显示此类别中的违规数量更多。
最佳答案
应避免共享可变状态,因为它可能会导致程序出错。特别是当您在多线程环境中工作时。它还会让你的程序可读性大大降低。这就是为什么修改相同状态的通信抛出应该至少最小化。
处理集合、数组以及日期是常见的做法,以确保您不会在类/线程中使用其他对象/线程提供的相同对象。
关于java - Sonar 违规 : Security - Array is stored directly - Why only arrays?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24040572/