java:接口,抽象,多态的综合小练习

java 复制代码
package 综合抽象接口练习;

public class person {
    protected String name;
    protected int age;

    person(){}

    person(String name,int age){
        this.name=name;
        this.age=age;
    }

    public void setName(String name)
    {
        this.name=name;
    }

    public String getName()
    {
        return name;
    }

    public void setAge(int age)
    {
        this.age=age;
    }

    public int getAge()
    {
        return age;
    }
}
java 复制代码
package 综合抽象接口练习;

public abstract class coach extends person{
    public coach(){};
    public coach(String name,int age)
    {
        super(name, age);
    }

    public abstract void teach();
}
java 复制代码
package 综合抽象接口练习;

public abstract class  player  extends person {
    public player(){};

    public player(String name,int age){
        super(name, age);
    }

    public abstract void study();
}

接口:

java 复制代码
package 综合抽象接口练习;

public interface speaking_English {
    public abstract void speakEnglish();
}
java 复制代码
package 综合抽象接口练习;

public class 乒乓player extends player implements speaking_English {
    public 乒乓player(){};

    public 乒乓player(String name,int age){
        super(name, age);
    }

    @Override
    public void speakEnglish(){
        System.out.println("乒乓球运动员在说英语");
    }

    @Override
    public void study(){
        System.out.println("乒乓球运动员会打篮球哦");
    }

}
java 复制代码
package 综合抽象接口练习;

public abstract class 乒乓球coach extends coach implements speaking_English{
    public 乒乓球coach(){};

    public 乒乓球coach(String name,int age){
        super(name, age);
    }

    @Override
    public void teach()
    {
        System.out.println("教练在教我打乒乓球");
    }

    @Override
    public void speakEnglish()
    {
        System.out.println("乒乓球教练在学习说英语");
    }

}
java 复制代码
package 综合抽象接口练习;

public abstract class 篮球coach extends coach{
    public 篮球coach(){};

    public 篮球coach(String name,int age){
        super(name, age);
    }

    @Override
    public void teach()
    {
        System.out.println("篮球教练正在教如何打篮球");
    }
}
java 复制代码
package 综合抽象接口练习;

public class 篮球player extends player{
    public 篮球player(){};

    public 篮球player(String name,int age){
        super(name, age);
    }

    @Override
    public void study()
    {
        System.out.println("篮球运动员会打篮球哦");
    }
}
java 复制代码
package 综合抽象接口练习;

public class test {
    public static void main(String[] args) {
        //创建运动员或者教练对象
        乒乓player ps1=new 乒乓player("王楚钦",24);
        System.out.println(ps1.getName()+","+ps1.getAge());
        ps1.study();
        ps1.speakEnglish();
    }
}
相关推荐
装不满的克莱因瓶13 分钟前
【SpringAI Alibaba】ReactAgent记忆管理MessageTrimmingHook与MessageDeletionHook
java·人工智能·ai·ai编程·springai·springaialibaba
文丑颜不良啊25 分钟前
LeetCode2241~2260题目解析
java·leetcode
文丑颜不良啊30 分钟前
LeetCode2321~2340题目解析
java·leetcode
驭渊的小故事1 小时前
Spring AOP 核心概念与通知类型详解
java·后端·spring
vipxieliang1 小时前
ValidX vs 手写验证代码:开发效率对比实测
java·spring boot·后端
白杨尚青1 小时前
C++进阶篇(五):红黑树——四条规则、三种插入情况与旋转变色
开发语言·数据结构·c++·stl·红黑树·平衡二叉树
vipxieliang1 小时前
虚拟线程与 GraalVM:Spring Boot 3.x 云原生性能跃迁
java·spring boot·后端
Rain的Java大神之路1 小时前
面试官最烦的答案:“我用 Redis + Token”!接口幂等 8 种方案 + 四层防御,把重复扣款工单干到 0
java·后端·面试
.道阻且长.1 小时前
Linux基本开发工具:gdb和cgdb的使用
linux·运维·服务器·开发语言
Rainmicro2 小时前
【无标题】
java·数据库·算法