接口与抽象类小练习
Posted yu-zhi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口与抽象类小练习相关的知识,希望对你有一定的参考价值。
/*
继承中接口与抽象类练习:
乒乓球运动员和篮球运动员
乒乓球教练和篮球教练。
为了出国交流,乒乓球相关人员都需要学习英语
分析:
乒乓球运动员:属性: 姓名,年龄,技能: 打乒乓球
篮球运动员: 属性: 姓名年龄, 技能: 打篮球
乒乓球教练: 属性: 姓名,年龄, 技能: 教练乒乓球
篮球教练: 属性: 姓名,年龄 技能: 教练 篮球
运动员抽象类: 属性: 姓名,年龄, 方法: 打球
教练抽象类: 属性: 姓名年龄, 方法: 教练
接口: 学习英语
实现:
接口: 学习英语
运动员抽象类: 属性: 姓名,年龄, 方法: 打球
教练抽象类: 属性: 姓名年龄, 方法: 教练
乒乓球运动员: 继承 接口与运动员抽象类
篮球运动员: 继承运动员抽象类
*/
//学习英语接口
interface LearnEnglish
{
public abstract void learn();
}
//运动员类
abstract class Sporter
{
private String name;
private int age;
//构造方法
Sporter(){}
Sporter(String name, int age){
this.name = name ;
this.age = age;
}
public abstract void play();
}
abstract class Trainer
{
private int age;
private String name;
//构造方法
Trainer(){}
Trainer(String name, int age){
this.name = name;
this.age = age;
}
public abstract void train();
}
//乒乓球运动员
class PingPenPlayer extends Sporter implements LearnEnglish
{
PingPenPlayer(String name, int age){
super(name, age);
}
public void play(){
System.out.println("pingpeng plays ");
}
public void learn(){
System.out.println("learn english");
}
}
class BasketballPlayer extends Sporter
{
BasketballPlayer(String name, int age){
super(name,age);
}
//方法重写
public void play(){
System.out.println("play basketballl");
}
}
class PingPenTrainer extends Trainer implements LearnEnglish
{
PingPenTrainer(String name, int age){
super(name, age);
}
//抽象教练父类方法
public void train(){
System.out.println("pingpeng train ");
}
//c重写学习英语接口方法
public void learn(){
System.out.println(" trainer learn english");
}
}
class BasketballTrainer extends Trainer
{
BasketballTrainer(String name, int age){
super(name, age);
}
//抽象教练父类方法
public void train(){
System.out.println("BasketballTrainer train");
}
}
public class InterfaceDemo
{
public static void main(String[] args){
//乒乓球运动员
Sporter pingpeng = new PingPenPlayer("张继科", 30);
pingpeng.play();
}
}
以上是关于接口与抽象类小练习的主要内容,如果未能解决你的问题,请参考以下文章