对象实例化涉及的步骤。

时间:2013-12-02 08:43:10

标签: java

我对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对象时,String测试会被实例化,因为当我调用usersView.printUsers(); String测试打印完美。但我不知道何时创建对象,内部的变量加载值。

3 个答案:

答案 0 :(得分:2)

test是一名班级成员。每个userView(应命名为UserView对象的值为test

创建对象时,为其分配内存并返回对该内存的引用,您将拥有此变量。我建议你通过tutorial来更好地理解这一点。

答案 1 :(得分:2)

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

有关详细说明---> http://en.wikibooks.org/wiki/Java_Programming/Object_Lifecycle

,请参阅此处

答案 2 :(得分:0)

你的问题不是很清楚。你应该使用大写来开始一个类名。因为当你试图调用对象时,这将导致混淆,因为类名和变量名都是相同的。

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

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