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

此案例可更好的理解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();
}
}

浙公网安备 33010602011771号