🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 深入构造器 > 构造器的最大用处就是创建对象。 如果在类定义中没有显式的定义一个构造器,则编译器在编译源文件时,会创建一个没有参数、没有方法体执行语句的空的构造器。 如果显式的定义了一个构造器,则上述的空的构造器则不会存在。 在调用构造器创建对象的时候,系统会为每个对象的实例变量设置默认值 > 基本数据:数值型的为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; } } ~~~