静态变量是否与Class类对象一起加载

时间:2014-11-18 14:48:12

标签: java static

我对静态变量有疑问。是绑定到Class类对象的静态变量(实例变量绑定到类的每个对象的方式类似)? 我觉得这样,因为类的Class类对象由classLoader加载一次。如果我错了,请纠正我。

由于 Jayendra

2 个答案:

答案 0 :(得分:2)

可以在不初始化的情况下加载类。静态初始化阶段设置静态字段。但是,通常在使用类实例,类的方法或类的实例时,它已经初始化。

答案 1 :(得分:1)

从概念上讲,静态变量是全局变量,它们所属的类只定义它们的命名空间。您根本无需保留任何对象即可访问静态变量。

静态变量和Class对象之间没有指定的连接。它们不是它的成员,如果不借助反射API也不能从它们那里获得它们。 Class对象是类的反射API的入口点这一事实恰巧是巧合。