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();
    }
}
相关推荐
NE_STOP15 分钟前
MyBatis-mybatis入门与增删改查
java
孟陬3 小时前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
想用offer打牌4 小时前
一站式了解四种限流算法
java·后端·go
华仔啊4 小时前
Java 开发千万别给布尔变量加 is 前缀!很容易背锅
java
也些宝5 小时前
Java单例模式:饿汉、懒汉、DCL三种实现及最佳实践
java
Nyarlathotep01135 小时前
SpringBoot Starter的用法以及原理
java·spring boot
wuwen55 小时前
WebFlux + Lettuce Reactive 中 SkyWalking 链路上下文丢失的修复实践
java
SimonKing6 小时前
GitHub 10万星的OpenCode,正在悄悄改变我们的工作流
java·后端·程序员
Seven977 小时前
虚拟线程深度解析:轻量并发编程的未来趋势
java