很多类都包含一个无参数的构造器,对象有无参数构造函数创建时,其状态会设置为适当的默认值。例如,以下是Employee类的无参数构造函数:
public Employee()
{
name = "";
salary = 0;
hireSay = localDate.now();
}
如果在编写一个类是没有编写构造器,那么系统就会提供一个无参数构造器,这个构造器将所有的实例域设置为默认值,于是,实例域中的数值型数据设置为0,布尔型数据设置为false,所有对象变量将设置为null
如果类中至少提供一个构造器,但是没有提供无参数的构造器,则在构造对象时如果没有提供参数就会被视为不合法。例如:
提供一个简单的构造器
employee( String name, double salary, int y, int m, int d)
对于这个类,构造器默认的雇员属于不合法的。就是说,调用
e = new Employee();
将会产生错误