应用程序想要完成具体的功能,仅有类是远远不够的,还需要根据类创建实例对象。在Java程序中,可以使用new关键字来创建对象,具体语法格式如下:类名 对象名称 = new 类名();
例如,创建Person类的实例对象代码如下:Person p = new Person();
上面的代码中,“new Person()”用于创建Person类的一个实例对象,“Person p”则是声明了一个Person类型的变量p,中间的等号用于将Person对象在内存中的地址赋值给变量p,这样变量p便持有了对象的引用。为了便于描述,本书接下来的章节,通常会将变量p引用的对象简称为p对象。在内存中变量p和对象之间的引用关系如图1所示。
从图1可以看出,在创建Person对象时,程序会占用两块内存区域,分别是栈内存和堆内存。其中Person类型的变量p被存放在栈内存中,它是一个引用,会指向真正的对象;通过new Person()创建的对象则放在堆内存中,这才是真正的对象。
小提示:
Java将内存分为两种,即栈内存和堆内存。其中栈内存用于存放基本类型的变量和对象的引用变量(如Person p),堆内存用于存放由new创建的对象和数组。
在创建Person对象后,可以通过对象的引用来访问对象所有的成员,具体格式如下:对象引用.对象成员