黑马程序员技术交流社区
标题:
接口-抽象的综合例题
[打印本页]
作者:
zhoudeheng
时间:
2015-4-27 22:33
标题:
接口-抽象的综合例题
//接口
interface SpeakEnglish//定义讲英语的接口,因为讲英语是乒乓球的教练和运动员特有的,所以定义为接口
{
public abstract void SpeakingEnglish();
}
//人
abstract class Person
{
private String name;
private 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;
}
public void sleep()//定义公共的方法
{
System.out.println("天晚了,要睡觉!!!");
}
public abstract void eat();//定义的抽象公共吃的方法,但不确定吃什么???
public void show()
{
System.out.println(name+"-------"+age);
}
}
//球员
abstract class Player extends Person
{
public abstract void exercise();//定义的抽象练习的方法,因不确定练习什么,所以定义为抽象的
}
//教练
abstract class Coach extends Person
{
public Coach(){}
public Coach(String name,int age)
{
super(name,age);
}
public abstract void introduce();//定义的抽象方法,因不确定教练教乒乓球还是篮球,所以定义为抽象的
}
//乒乓球球员
class PingPongPlayer extends Player implements SpeakEnglish
{
public void play()
{
System.out.println(getName()+"打乒乓球");
}
public void exercise()
{
System.out.println("我练习打乒乓球");
}
public void eat()
{
System.out.println("乒乓球运动员吃牛排");
}
public void SpeakingEnglish()
{
System.out.println("乒乓球运动员要讲英语");
}
}
//篮球球员
class BasketballPlayer extends Player
{
public void Play()
{
System.out.println("我打篮球");
}
public void exercise()
{
System.out.println("我练习打篮球");
}
public void eat()
{
System.out.println("篮球运动员吃猪排");
}
}
//乒乓球教练
class PingPongCoach extends Coach implements SpeakEnglish
{
public void SpeakingEnglish()
{
System.out.println("乒乓球教练要讲英语");
}
public void introduce()
{
System.out.println("我教乒乓球");
}
public void eat()
{
System.out.println("乒乓球教练吃牛肉");
}
}
//篮球教练
class BasketballCoach extends Coach
{
public BasketballCoach(String name,int age)
{
super(name,age);
}
public void introduce()
{
System.out.println("我教篮球");
}
public void eat()
{
System.out.println("篮球教练吃牛排");
}
}
class PlayerTest
{
public static void main(String[]args)
{
PingPongPlayer pp=new PingPongPlayer();
//第一种方法,通过setName(),setAge(),getName(),getAge()方法调用来实现
pp.setName("姐姐");
pp.setAge(13);
pp.play();
System.out.println(pp.getName()+"-------"+pp.getAge());
//第二种,通建立对象初始化赋值,必须有相对应的构造函数
BasketballCoach bb=new BasketballCoach("周总理",34);
bb.show();
}
}
作者:
东东西西
时间:
2015-4-27 22:58
顶顶 顶
作者:
耳东君
时间:
2015-4-27 23:03
顶个~~~~
作者:
Mr.Kaizhei
时间:
2015-4-27 23:05
顶个………………
作者:
showdy
时间:
2015-4-27 23:06
什么都是浮云
作者:
缤纷落叶
时间:
2015-4-27 23:06
怎么能....呃。。。。自流主流
作者:
梦逆光377
时间:
2015-4-27 23:21
赞赞赞赞
作者:
王善辉
时间:
2015-4-27 23:27
膜拜。。。。。
作者:
fanxia_2007
时间:
2015-4-27 23:32
膜拜,楼上的你怎么这么早就回去了啊,难道赶上地铁了!
作者:
小甲鱼
时间:
2015-4-27 23:36
霸气!!!!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2