在 Java 面向对象-构造方法 这篇文章中,我们实现了多构造方法:
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public Person(String name) {
this.name = name;
this.age = 12;
}
public Person() {
}
}
如果调用 new Person("Xiao Ming", 20); ,会自动匹配到构造方法 public Person(String, int) 。
如果调用 new Person("Xiao Ming"); ,会自动匹配到构造方法 public Person(String) 。
如果调用 new Person(); ,会自动匹配到构造方法 public Person() 。
这种方法名相同,但各自的参数不同,称为方法重载(
Overload)。
注意:方法重载的返回值类型通常都是相同的。
参考:www.liaoxuefeng.com/wiki/125259…