gpt4 book ai didi

java - FindBugs 错误 : Write to static field from instance method

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:32:33 24 4
gpt4 key购买 nike

我的应用程序中有几个区域在从实例方法中操作静态变量的值时出现错误。

“从实例方法写入静态字段”

如果我们不考虑多线程,即使多个实例写入同一个 static 变量,这种情况是否会带来任何潜在问题?

最佳答案

从文档...

This instance method writes to a static field. This is tricky to get correct if multiple instances are being manipulated, and generally bad practice.

  • 首先,它说这是一种不好的做法,并非不正确。
  • 第二件事是关于提出任何潜在问题的问题

    如果你正在操纵一个 static来自实例方法的字段,类的任何对象(包含我们的实例方法的类)都可能正在调用该方法,并且很难找出操纵的对象static一些大型应用程序或已经由其他人开发和编码的应用程序中的领域。

This Answer也可以帮助你。

编辑:

仅供引用,您可以在以下代码中绕过 findbug 的警告。

class TestClass {

static int testInt = 0 ;

public static setTestInt ( int a ) {
TestClass.testInt = a ;
}

public void setInt ( int a1 ) {
setTestInt ( a1 );
}
}

关于java - FindBugs 错误 : Write to static field from instance method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21136302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com