gpt4 book ai didi

java - 将实现接口(interface)的某个类的对象分配给类型接口(interface)

转载 作者:行者123 更新时间:2023-12-02 02:55:17 25 4
gpt4 key购买 nike

标题有点长,所以我将使用一些代码来解释我的问题:

假设我有一个类'Team',它实现了ManageableTeam接口(interface)。ManagableTeam有以下方法:

public boolean isPlayerRegistered(FootballPlayer player);
public boolean registerPlayer(FootballPlayer player);
public void setFormation(Formation formation);
  • 团队类中,我覆盖了上述方法,但我还有一些其他方法,例如:

public boolean isPlayerReady(FootballPlayer player) ;

-现在,如果在其他类(class)中,我有以下字段:

ManageableTeam managingTeam;

及方法:

public void setManagingTeam (ManageableTeam team){
this.managingTeam = team;
}

-将 Team 类的对象分配给 ManageableTeam 类型的对象是否会使对象只能使用在接口(interface) ManageableTeam 中声明的 3 个方法?

就像 ManageableTeam 管理团队 = new Team();创建一个对象,该对象只能使用在接口(interface) ManageableTeam 中声明的方法,而不能使用未在接口(interface)中声明的方法,例如 isPlayerReady 方法?

最佳答案

您可以将对象强制转换为类类型,如下所示:

 this.managingTeam = (Team)team;

在这种情况下,Teal 类的所有方法都可用。但首先你应该更好地检查团队实例是否团队

关于java - 将实现接口(interface)的某个类的对象分配给类型接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57081279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com