我正在学习获得 JAVA SE8 认证,我对我发现的一个问题有疑问。我的疑问是:
如果成员变量是非静态的,类的实例是否拥有其自己的每个成员变量的副本?
我对这个问题的回答是肯定的,但是我用来研究的模拟器的修正表明对象没有自己的非静态成员变量的副本!
我不明白为什么,谢谢你的帮助。
最佳答案
答案是 - 类的实例将拥有其自己的非静态成员变量的独特副本。当我们将成员变量定义为静态时,它将被分配类生命周期,而不是实例生命周期。
示例:
Class A{
String s;
static String str;
}
在这里您可以使用
访问变量“s”new A().s;
其中“str”使用
A.str;
关于java - 类的每个对象都有自己的每个非静态成员变量的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48589723/