类的每个对象都有自己的每个非静态成员变量的副本

时间:2018-02-02 19:34:59

标签: java object variables static instance

我正在学习获得JAVA SE8认证,我怀疑我找到了一个问题。我怀疑是:

如果此成员变量是非静态的,那么类的实例是否有自己的每个成员变量的副本?

我对这个问题的回答是肯定的,但我正在研究的模拟器的更正说明一个对象没有自己的非静态成员变量副本!

我不明白为什么,谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

答案是 - 类的实例将拥有自己的非静态成员变量的不同副本。当我们将成员变量定义为static时,它将被赋予类生命周期,而不是实例生命周期。

示例:

Class A{
 String s;
 static String str;
}

在这里你可以访问变量" s"使用

new A().s;

" str"使用

A.str;