SuperClass更改类型变量SubClass

时间:2017-02-13 03:10:12

标签: java

我的项目中有一个问题,下面是我的班级:

class BasePlayer {
    ...
}

class Player extend BasePlayer {
    ...
}

class BasePlayerManager {
    private List<BasePlayer> players;

    public BasePlayer getPlayerById() {

    }

    public List<BasePlayer> getPlayers() {
        return players;
    }
}

class PlayerManager extend BasePlayerManager {

}

我需要在PlayerManager类中使用一个解决方案。我可以得到:

PlayerManager playerManager = new PlayerManager();
Player player = playerManager.getPlayerById();

任何人都可以帮助我吗?我不想重写函数 getPlayerById

谢谢你

1 个答案:

答案 0 :(得分:0)

你的问题不正确, 如果您想在PlayerManager中获取或调用getPlayerById(), 您可以直接调用它或覆盖getPlayerById(),因为PlayerManager是BasePlayerManager的子类。

public或protected的超类方法可以直接调用子类