Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 对象实例化中涉及的步骤。_Java - Fatal编程技术网

Java 对象实例化中涉及的步骤。

Java 对象实例化中涉及的步骤。,java,Java,我对Java有一个非常基本的疑问。我有以下课程: userViewtest.java: package source; public class userViewTest{ public static void main(String[] args){ userView usersView = new userView(); usersView.printUsers(); } } 然后是userView.java: package

我对Java有一个非常基本的疑问。我有以下课程:

userViewtest.java:

package source;

public class userViewTest{
    public static void main(String[] args){
           userView usersView = new userView();
           usersView.printUsers();
    }
}
然后是userView.java:

package source;
    public class userView{
        String test="My test String";
        public void printUsers(){
    System.out.println(test);

        }
    }

如果这是一个愚蠢的问题,请原谅,但是当创建userView对象时,字符串测试会被实例化吗,因为当我调用usersView.printUsers()时;字符串测试打印得非常完美。但是我不知道什么时候创建对象,里面的变量会加载值

test
是类成员。每个
userView
(应命名为
userView
)对象的值为
test


当您创建一个对象时,您为它分配内存,并返回对该内存的引用,在该内存中您有这个变量。我建议你通过考试来更好地理解这一点。

考试
是班级成员。每个
userView
(应命名为
userView
)对象的值为
test


当您创建一个对象时,您为它分配内存,并返回对该内存的引用,在该内存中您有这个变量。我建议您通过a更好地理解这一点。

是的,在您创建对象的那一刻,java在堆上为您的对象创建空间,并将您的对象存储在那里,其中包含实例变量(在您的情况下,test是变量)


请参见此以获取详细解释
-->

是的,在您创建对象时,java会在堆上为您的对象创建空间,并将您的对象存储在其中,其中包含实例变量(在您的情况下,test是变量)


详细解释请参见此
-->

您的问题不太清楚。你应该用大写字母来开始一个类名。因为类名和变量名都是相同的,所以在尝试调用对象时会导致混淆

UserView usersView = new userView(); // Here, you are creating a new instance of 
                                     // userView which refers to the same memory location

usersView
包含
UserView
的所有属性。现在,您可以通过方法名调用它们来调用它们。

您的问题不太清楚。你应该用大写字母来开始一个类名。因为类名和变量名都是相同的,所以在尝试调用对象时会导致混淆

UserView usersView = new userView(); // Here, you are creating a new instance of 
                                     // userView which refers to the same memory location
usersView
包含
UserView
的所有属性。现在可以通过方法名调用它们来调用它们