Las*_*olt 36
在某些情况下,我们需要初始化抽象类中的字段.如果它是一个空构造函数,则由子类中的构造函数隐式完成,否则我们使用super(parameters).带参数的构造函数强制子类指定一些参数(不一定来自它自己的参数).
总而言之,这意味着构造函数由子类构造函数使用,而不是来自"外部".
mar*_*igo 26
通过向抽象类添加构造函数,可以强制子类调用super来初始化某些字段.例:
abstract class Person {
private String name;
public Person(String name) {
this.name = name;
}
}
class SoccerPlayer extends Person {
public SoccerPlayer(String name) {
super(name);
}
}
Person p = new SoccerPlayer("Ronaldo");
| 归档时间: |
|
| 查看次数: |
29669 次 |
| 最近记录: |