作者:mobiledu2502894453 | 来源:互联网 | 2023-01-31 17:00
如果我有这个抽象类:
package com.abc;
public abstract class Player {
private String name;
public Player(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
当我从抽象类中扩展一个新类时,新类默认使用继承的构造函数,还是必须创建一个调用"super"的构造函数?
1> Elliott Fris..:
默认情况下,它将使用默认的空构造函数; 因为你明确地提供了一个构造函数,所以你没有得到默认的构造函数.因此,是的,你必须明确地打电话super(String)
.如果您不想要这个限制,那么您应该为您的添加空构造函数Player
.
protected Player() { // <-- only visible to sub-classes.
// ... implicit super();
}