运动员和教练(基础)(练习)

练习题目
此案例可更好的理解java中接口/继承的关系。
总共八个类,一个接口。
八个类中有3个继承类。

package com.case案例01;

public abstract class Person {

    String name;
    int age;

    public Person() {
    }

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

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

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

    public abstract void eat();

}

package com.case案例01;

public interface English {
    public void speak();
}

package com.case案例01;

public abstract class Coach教练 extends Person{

    public Coach教练() {
    }

    public Coach教练(String name, int age) {
        super(name, age);
    }

    public abstract void teach();

}

package com.case案例01;

public abstract class Athlete运动员 extends Person{

    public Athlete运动员() {
    }

    public Athlete运动员(String name, int age) {
        super(name, age);
    }

    public abstract void training();

}

package com.case案例01;

public class PingpongCoach extends Coach教练 implements English{

    public PingpongCoach() {
    }

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

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

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

    @Override
    public void eat() {
        System.out.println("乒乓球教练吃饭");
    }
}

package com.case案例01;

public class BasketballAthlete extends Athlete运动员{

    public BasketballAthlete() {
    }

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

    @Override
    public void eat() {
        System.out.println("篮球运动员吃饭");
    }

    @Override
    public void training() {
        System.out.println("篮球运动员训练");
    }
}

```java
package com.case案例01;

public class PingpongAthlete extends Athlete运动员 implements English{

    public PingpongAthlete() {
    }

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

    @Override
    public void eat() {
        System.out.println("乒乓球运动员吃饭");
    }

    @Override
    public void training() {
        System.out.println("乒乓球运动员训练");
    }

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

}

package com.case案例01;

public class BasketballCoach extends Coach教练{

    public BasketballCoach() {
    }

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

    @Override
    public void teach() {
        System.out.println("篮球教练教篮球");
    }

    @Override
    public void eat() {
        System.out.println("篮球教练吃饭");
    }
}

package com.case案例01;

public class test {

    public static void main(String[] args) {
        PingpongAthlete pa = new PingpongAthlete();
        pa.setAge(10);
        pa.setName("张青");
        System.out.println(pa.getAge()+"岁的"+pa.getName());
        pa.eat();
        System.out.println("-----------");
        PingpongCoach pc = new PingpongCoach("张继科",60);
        System.out.println(pc.getAge()+"高龄的"+pc.getName());
        pc.speak();
    }

}

posted @ 2021-01-28 14:56  丰北丰  阅读(77)  评论(0)    收藏  举报