初始化_03

来源:互联网 发布:matlab7,1如何编程 编辑:程序博客网 时间:2024/06/18 14:30

类中域为基本类型可以被自动初始化为0,对象引用会被初始化为null。

初始化对象引用的方法

{

1.在定义对象的地方。

2.在类的构造器中

3.在正要使用对象之前(惰性初始化)

4.实例初始化


}

class Soap {  private String s;  Soap() {    print("Soap()");    s = "Constructed";//2<span style="font-size:14px;">在类的构造器中</span>  }  public String toString() { return s; }}public class Bath {  private String // 1<span style="font-size:14px;">在定义对象的地方</span>    s1 = "Happy",    s2 = "Happy",    s3, s4;  private Soap castille;  private int i;  private float toy;  public Bath() {    print("Inside Bath()");    s3 = "Joy";    toy = 3.14f;    castille = new Soap();//<span style="font-size:14px;">4实例初始化</span>  }  // Instance initialization:  { i = 47; }  public String toString() {    if(s4 == null) // Delayed initialization:      s4 = "Joy";    return      "s1 = " + s1 + "\n" +      "s2 = " + s2 + "\n" +      "s3 = " + s3 + "\n" +      "s4 = " + s4 + "\n" +      "i = " + i + "\n" +      "toy = " + toy + "\n" +      "castille = " + castille;  }  public static void main(String[] args) {    Bath b = new Bath();//<span style="font-size:14px;">3在正要使用对象之前(惰性初始化)</span>    print(b);  }} /* Output:Inside Bath()Soap()s1 = Happys2 = Happys3 = Joys4 = Joyi = 47toy = 3.14castille = Constructed


0 0