构造方法

参考:https://www.liaoxuefeng.com/wiki/1252599548343744/1260454185794944

1. 什么是构造方法
在使用new操作符创建新的对象时,系统自动调用的用于初始化对象属性的方法。
2. 构造方法需要手动创建吗,是不是所有的类都有构造方法
如果没有显式地创建一个构造方法,编译器会自动为我们生成一个默认构造方法,它没有参数,也没有执行语句,类似于public person(){}
所以,所有的类都是有构造方法的。
3. 构造方法可以有多个
允许定义多个构造方法,在通过new操作符调用的时候,编译器通过构造方法的参数数量、位置和类型自动区分,决定使用哪个构造方法。例如:

public class Person(){
      private String name;
      pirvate int age;
      public Person(){ // new Person()时调用
      }
      public Person(String name,int age){ // new Person('xiaoming',18)时调用
            this.name = name;
            this.age = age;
      }
      public Person(String name){ // new Person('xiaoming')时调用
            this.name = name; 
            this.age = 18;
      }
      public Person(int age){
            this('lily',age); //构造函数中调用构造函数,使用this
      }
}
posted @ 2020-07-01 16:19  21summer  阅读(123)  评论(0编辑  收藏  举报