我们都知道, 在一个抽象类中如果重载了构造方法的话, 那么必须显式的写出一个无参的构造方法
public 类名{ } 不然的话 在后面类实现的时候就会报错
但是在这里 我看了一个视频 , 它的 抽象类中只写了一个带有2个参数的构造方法 , 没有写无参的
public Person(String name , int age){
this.setName(name);
this.setAge(age);
}
而且后面有2个类继承了这个抽象类 没报错, 为什么呢?
原因就在于
他在创建对象的时候是 有选择性的去实现那个带参数的构造方法, 而我们经常的是在什么情况下呢?
是这样的:
Person p = new Worker(); 这个不带参数直接创建对象的情况 一定会报错误的.