5-5深入构造器

5.5深入构造器

5.5.1使用构造器进行初始化

在创建对象时,对象的实例变量会设置为默认值(0、false、null)。如果想要指定对象的初始值,就要通过构造器来实现。

**注意:**构造器之前,对象已经被创建出来并进行了默认初始化,只是不能访问。构造器只是进行显式初始化,并隐式返回对象。

5.5.2构造器重载

同一个类允许拥有多个构造器来初始化java对象。

补充:构造器互相调用

由于有时一个构造器的大多数语句与另一个构造器一致,因此为了代码复用,允许构造器调用构造器。为了在构造器B中调用构造器A中的初始化代码,又不会重新创建新对象,可以使用this关键宇来调用相应的构造器。

public class Apple
{
public String name;
public String color;
public double weight;
public Apple(){}
public Apple(String name, String color)
{
this.name = name;
this.color = color;
}
public Apple(String name, String color, double weight)
{
this(name,color); //调用构造器
this.weight = weight;
}
}

**注意:**使用 this 调用另一个重载构造器只能在构造器中使用,而且必须作为构造器执行体的第一条语句。