构造器的最大用处就是创建对象。
如果在类定义中没有显式的定义一个构造器,则编译器在编译源文件时,会创建一个没有参数、没有方法体执行语句的空的构造器。
如果显式的定义了一个构造器,则上述的空的构造器则不会存在。
在调用构造器创建对象的时候,系统会为每个对象的实例变量设置默认值
基本数据:数值型的为0,布尔类型的为false,char类型的为’\u0000’;
引用数据类型:null;
如果在方法中定义的局部变量:系统是不会对其设置默认值的,必须要显式的通过赋值运算符=给变量赋值。
通过构造器为成员变量定义初始化值,这也是构造器的最最重要的用途之一。
构造器重载:
如果需要在构造器中调用另外一个构造器,可以使用 this(params);
在构造器中调用构造器,必须把this(params)放在有效的执行语句第一行,而且不允许出现两条this(params)语句。
public Client1(int age, String code, String name) { this(age); this.name = name; }
public Client1(String code) { this.code = code; }
public Client1(int age) { // 复用 if (age < 0 || age > 150) { System.out.println("不合法的年龄数据"); } else { this.age = age; } } |