/*
乒乓球运动员和足球运动员。
乒乓球教练和足球教练。
为了出国交流,跟乒乓球相关的人员都需要学习英语。
请用所学知识:
分析,这个案例中有哪些抽象类,哪些接口,哪些具体类
接口: 英语接口
学英语
人:抽象类
属性 name
方法 eat(抽象方法)
(抽象类)运动员 extends 人:
方法:study(抽象方法)
(具体类)乒乓球运动员 extends 运动员 implements 英语接口
(具体类)足球运动员 extends 运动员
(抽象类)教练 extends 人:
方法:teach(抽象方法)
(具体类)乒乓球教练 extends 教练 implements 英语接口
(具体类)足球教练 extends 教练
*/
//接口
interface English {
public abstract void studyEnglish();
}
//抽象类 人类
abstract class Person {
//成员变量
private String name;
//构造方法
public Person(){}
public Person(String name){
this.name = name;
}
//成员方法
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
//抽象方法
public abstract void eat();
}
//抽象类运动员类
abstract class Player extends Person {
//构造方法
public Player(){}
public Player(String name){
super(name);
}
//抽象方法
public abstract void study();
}
//抽象类教练类
abstract class Coacher extends Person{
public Coacher(){}
public Coacher(String name){
super(name);
}
//抽象方法
public abstract void teach();
}
//具体类
class PingPongPlayer extends Player implements English {
public PingPongPlayer(){}
public PingPongPlayer(String name){
super(name);
}
//方法重写
public void studyEnglish(){
System.out.println("乒乓球运动员使劲的学习英语");
}
public void eat(){
System.out.println("乒乓球运动员使劲的吃脑白金");
}
public void study(){
System.out.println("乒乓球运动员诗经的学习扣球");
}
}
class FootballPlayer extends Player {
public FootballPlayer(){}
public FootballPlayer(String name){
super(name);
}
//方法重写
public void eat(){
System.out.println("足球运动员诗经的吃大白菜");
}
public void study(){
System.out.println("足球人学习踢假球");
}
}
//具体类教练
class PingPongCoacher extends Coacher implements English {
public PingPongCoacher(){}
public PingPongCoacher(String name){
super(name);
}
public void studyEnglish(){
System.out.println("乒乓球教练使劲的学习英语");
}
public void eat(){
System.out.println("乒乓球教练使劲的吃生命一号");
}
public void teach(){
System.out.println("乒乓球教练使劲的教扣球");
}
}
//具体类 足球教练
class FootballCoacher extends Coacher {
public FootballCoacher(){}
public FootballCoacher(String name){
super(name);
}
//方法重写
public void eat(){
System.out.println("足球教练使劲的吃白萝卜");
}
public void teach (){
System.out.println("足球教练使劲的教怎么踢假球");
}
}
//测试类
class InterfaceTest3 {
public static void main(String[] args)
{
PingPongCoacher ppc = new PingPongCoacher("王乒乓");
System.out.println(ppc.getName() );
ppc.studyEnglish();
ppc.eat();
ppc.teach();
System.out.println("===========");
PingPongPlayer ppp = new PingPongPlayer("王乒乓球");
System.out.println(ppp.getName() );
ppp.studyEnglish();
ppp.eat();
ppp.study();
System.out.println("===========");
System.out.println("===========");
FootballCoacher fc = new FootballCoacher("王乒乓");
System.out.println(fc.getName() );
fc.eat();
fc.teach();
System.out.println("===========");
FootballPlayer fp = new FootballPlayer("王乒乓球");
System.out.println(fp.getName() );
fp.eat();
fp.study();
}
}
小狼自测,第一遍大概敲了五十分钟啊,简直龟速啊
|