用构造器确保初始化

用构造器确保初始化

可以假想为编写的每一个类都定义一个initialize()方法。该方法的名称提醒你在使用其对象之前,应先调用initialize()方法。然而这同时意味着用户必须记得自己去调用此方法。在java中,通过提供构造器,类的设计者可确保每个对象都会得到初始化。创建对象时,如果其类具有构造器,java就会在用户有能力操作对象之前自动给调用相应的构造器,从而保证了初始化的进行。

如何命名这个方法。有两个问题:第一,所取的任何名字都可能与类的成员名称相冲突;第二,掉用构造器是编译器的责任,所以必须让编译器知道应该调用哪个方法。

以下是带有构造器的简单类:

 1 //Demostration of a simple constructor
 2 
 3 class Rock{
 4     Rock(){
 5           System.out.print("Rock");
 6     }
 7 }
 8 
 9 public class SimpleConstructor {
10     public static void main(String[] args) {
11         for (int i = 0; i < 10; i++) {
12             new Rock();
13         }
14     }
15 }/*Output:
16   Rock Rock Rock Rock Rock Rock Rock Rock Rock Rock 
17 */

现在,创建对象时:

new Rock();

将会为对象分配空间,并调用相应的构造器。这就确保了在你能操作对象之前,它已经被恰当的初始化了。

注意:构造器的名称必须与类名完全相同。

 

原文地址:https://www.cnblogs.com/luminous-Xin/p/10994286.html