8.1.3 初始化对象

创建一个对象时,总希望它能立即被初始化,即立刻将其与相应的对象进行关联。在Java中,这是一个非常简单的工作。使用关键字“new”来完成对象句柄的命名,用“=”将对象句柄与对象关联。举例:


String str=new String("Hello");


解释与分析:String是Java中用到最多的字符串对象。在这个例子中,先给对象句柄命名,并且声明这个对象句柄的类型是属于什么类型的对象,最后,将“Hello”这个字符串类型对象的内存地址赋给这个对象句柄。于是,对象句柄初始化的工作就算完成了。以后要操纵这个对象,只要操纵这个“str”对象句柄就可以了。

【实例8.1】下面看一个程序段。


01 public class object1

02 {

03 public static void main(String[]args)

04 {

05 object1 m=new object1();

06 }

07 }


【代码说明】以上这个例子中,通过第5行的代码,为“object1”类初始化一个“object1”对象“m”,而这个“m”就是前面提到的对象句柄。在学完本章的其他小节后,就可以通过对象句柄,来访问这个对象的方法函数和属性值。

【运行效果】本例没有输出任何内容。

真正开发的时候,就可以体会到使用对象句柄的优点在什么地方。对象初始化工作是非常重要的,它是从一个类中创造一个对象的过程。

注意

首先将对象句柄的类型声明好,再将“=”作为一个指向,指向由关键字所创建的新对象所存储的内存地址,以后,就可以通过这个对象句柄来操作这个新对象。一般情况下,是将对象句柄看成是新对象的替代物。

虽然对象句柄被看成对象的替代物,但必须将这两个不同的概念区分开来,因为真正要操作的是对象,而对象句柄只不过是一个指向对象所存储的内存地址指针,是一个操作对象的工具。其实对象句柄就好比是C++中的指针,但是在Java中不存在指针这个概念。

操作对象有什么用处呢?其实操作对象就是通过访问对象内的成员,来实现某种功能。那对象里面有些什么成员呢?下一节将更加深入地讲解对象中的成员。