在Java中,构造函数是一种特殊的方法,用于初始化对象的状态。构造函数的名称必须与类名相同,并且没有返回类型。现在我们来讨论构造函数的重载和覆盖之间的区别。
例如:
class Person {
String name;
int age;
// 重载构造函数
Person() {
this("Unknown", 0);
}
Person(String name, int age) {
this.name = name;
this.age = age;
}
}
例如:
class Employee extends Person {
double salary;
// 覆盖构造函数
Employee() {
super("Unknown", 0);
}
Employee(String name, int age, double salary) {
super(name, age);
this.salary = salary;
}
}
总结: