显示域初始化

通过重载类的构造器方法,可以采用多种形式设置类的实例域的初始状态.确保不管怎样调用构造器,每个实例域都可以被设置为一个有意义的初值,这是一种很好的设计习惯.

可以在类定义中,直接将一个值赋给任何域,例如:

class Employee{
    private String name = "tom";
    ....
}

在执行构造函数之前,先执行赋值操作.当一个类的所有构造器都希望把相同的值赋予某个特定的实例域时,这种方式特别有用.

初始值不一定是常量值.在下面的例子中,可以调用方法对域进行初始化.仔细看一下Employee类,其中给每个雇员都有一个id域,可以使用下列方式进行初始化:

class Employee{
    private static int nextId;
    private int id = assigId();
    ....
    private static int assigId(){
        int r = nextId;
        nextId++;
        return r;
    }
}
原文地址:https://www.cnblogs.com/liuzhidao/p/13705944.html