根据静态成员的概念,当首次调用其类时,它们将被创建/加载到内存中。它们在该类的所有实例中都很常见。意味着它们不会被重新创建或重新化等等。此外,它们只能通过类名访问。不需要为该类创建对象来访问它们。
现在我的问题是;
发布于 2011-06-01 03:48:56
1)只有当定义静态成员的类本身被收集时,静态成员才会被垃圾收集;这也只能在收集定义的ClassLoader时才会发生。这在web应用程序容器和插件体系结构中很常见。
2)是的,定义大量的静态数据可能是个坏主意。但是它就像很多其他的东西:如果你需要它,它是好的,如果你滥用它,它是坏的。用常识就行。
3)再一次,定义1000个String数组的接口是个坏主意,但这当然不是人们通常所做的事情。用常识就行。一般情况下,没有(与内存相关的)原因可以避免静态变量。
发布于 2011-06-01 03:50:21
,
发布于 2011-06-01 05:14:06
https://stackoverflow.com/questions/6196027
复制相似问题