某国家队有队员(member)数名,包括运动员(player)和教练(coach),其中运动员和教练都有自己的姓名(name)、年龄(age)、身高(height)、体重(weight)属性,都要去参加比赛(competition),但二者不同的是,教练参加比赛是为了指导运动员,而运动员参加比赛是与其他选手PK。且为了出国交流,教练需要学习英语(learnEnglish)。要求利用抽象类、多态和接口实现,并在测试类(Test)中进行测试。
提示:
① 队员(member)是抽象父类,包含姓名(name)、年龄(age)、身高(height)、体重(weight)属性,包含抽象方法(competition),具体实现由子类完成。
② 学习英语(learnEnglish)是接口,包含一个抽象方法。
③ 运动员(player)和教练(coach)是队员(member)的子类,同时教练(coach)需要实现英语(learnEnglish)。
某国家队有队员(member)数名,包括运动员(player)和教练(coach)
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- ShowMeAI 2023-01-03 10:50关注
详细代码实现如下,望采纳
public abstract class Member { private String name; private int age; private double height; private double weight; public Member(String name, int age, double height, double weight) { this.name = name; this.age = age; this.height = height; this.weight = weight; } public abstract void competition(); } public interface LearnEnglish { void learnEnglish(); } public class Player extends Member { public Player(String name, int age, double height, double weight) { super(name, age, height, weight); } @Override public void competition() { // PK其他选手 } } public class Coach extends Member implements LearnEnglish { public Coach(String name, int age, double height, double weight) { super(name, age, height, weight); } @Override public void competition() { // 指导运动员 } @Override public void learnEnglish() { // 学习英语 } } public class Test { public static void main(String[] args) { Member player = new Player("张三", 25, 180.0, 80.0); Member coach = new Coach("李四", 35, 175.0, 75.0); player.competition(); coach.competition(); ((Coach) coached).learnEnglish(); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 用hfss做微带贴片阵列天线的时候分析设置有问题
- ¥50 我撰写的python爬虫爬不了 要爬的网址有反爬机制
- ¥15 Centos / PETSc / PETGEM
- ¥15 centos7.9 IPv6端口telnet和端口监控问题
- ¥120 计算机网络的新校区组网设计
- ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
- ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
- ¥20 海浪数据 南海地区海况数据,波浪数据
- ¥20 软件测试决策法疑问求解答
- ¥15 win11 23H2删除推荐的项目,支持注册表等