java - 为什么我们对类变量使用 static?

标签 java static

类似于 - Why are static variables considered evil?

我也是业内的一名新手程序员。我在整个应用程序中声明的所有类中看到很多静态变量。将类变量设置为静态有什么好处?

我注意到每个类都至少包含一个静态变量。

示例:

public class FileWriter{


    private static Properties configProps = null ;
    private static String propertyFile = "config/database.properties";  
    private static String LOG_PROPERTIES_FILE = "config/log4j.properties";
                    .
                    .
                    .

我知道这些变量对于所有对象都是通用的。比如说,FileWriter 的 object1 和 FileWriter 的 object2 使用仅在内存中的一个位置创建的相同变量 configProps?

在下面的例子中,numberA不应该是静态变量吗?如果声明为静态会发生什么?

  public class sumFinder{

       private int numberA=0;


 }

如果太傻了,请见谅。

谢谢

最佳答案

如果我们将变量声明为 static我们可以承认 JVM 中只出现了一次该类实例化了多少次。

例如:

public class A{
private static int id;
// getter setter
}

现在从 main()

A a=new A();
a.setId(2);

当您调用其他地方时 a.getId()它会给你 2 ,多少次A设置后实例化id .

关于java - 为什么我们对类变量使用 static?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26119826/

相关文章:

java - 如何初始化静态 block ?

java - @Autowired bean 在静态方法中作为 null

c# - 为什么不能通过实例名称访问静态成员?

java - 如何防止 Java 中的 SocketInputStream.socketRead0 挂起?

java分隔符错误

java - 用于显示 ppt(power point 演示文稿)的 GWT 小部件

Java:使用端点将webservice发布到tomcat服务器

Java:变量不递增

java - 我应该避免使用静态变量吗

java - 为什么一类有效而另一类无效?