【发布时间】:2014-11-19 13:16:16
【问题描述】:
我正在编写一小段代码,以确保我了解 Java 基础知识,并且我有以下内容。
package teams1;
public abstract class Team1{
private String sport = new String();
public abstract String getSport();
public abstract void setSport();
}
import teams1.*;
abstract class FootballTeam1 extends Team1{
public String getSport(){
return "Football";
}
public void setSport(){
this.sport="Football";
}
}
它无法编译,因为运动在超类中是私有的,但我认为 FootballTeam1 会继承它自己的运动副本,因为它正在扩展 Team1。任何帮助,将不胜感激。谢谢!
【问题讨论】:
-
Private 意味着它不适用于子类(或任何外部的东西)。如果您希望它对子类可用,则必须对其进行保护。 (顺便说一下FootBallTeam1还有一个运动场,只是不能直接访问)
-
这与抽象类无关。
标签: java inheritance abstract