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();
    }
}
相关推荐
墨染点香7 分钟前
LeetCode Hot100【6. Z 字形变换】
java·算法·leetcode
心情好的小球藻26 分钟前
Python应用进阶DAY9--类型注解Type Hinting
开发语言·python
ldj202030 分钟前
SpringBoot为什么使用new RuntimeException() 来获取调用栈?
java·spring boot·后端
超龄超能程序猿31 分钟前
Spring 应用中 Swagger 2.0 迁移 OpenAPI 3.0 详解:配置、注解与实践
java·spring boot·后端·spring·spring cloud
惜.己38 分钟前
使用python读取json数据,简单的处理成元组数组
开发语言·python·测试工具·json
风象南43 分钟前
SpringBoot配置属性热更新的轻量级实现
java·spring boot·后端
洛阳泰山44 分钟前
Spring Boot 整合 Nacos 实战教程:服务注册发现与配置中心详解
java·spring boot·后端·nacos
Y40900144 分钟前
C语言转Java语言,相同与相异之处
java·c语言·开发语言·笔记
YuTaoShao1 小时前
【LeetCode 热题 100】994. 腐烂的橘子——BFS
java·linux·算法·leetcode·宽度优先
布朗克1681 小时前
java常见的jvm内存分析工具
java·jvm·数据库