先写player类
public abstract class Player {
protected String name;
public Player(String name)
{
this.name=name;
}
public abstract void Attack();
public abstract void Defense();
}
在写几个类用来继承Player类
public class Center extends Player{
public Center(String name) {
super(name);
// TODO Auto-generated constructor stub
}
@Override
public void Attack() {
// TODO Auto-generated method stub
System.out.println("中锋"+name+"进攻");
}
@Override
public void Defense() {
// TODO Auto-generated method stub
System.out.println("中锋"+name+"防守");
}
}
public class Guards extends Player{
public Guards(String name) {
super(name);
// TODO Auto-generated constructor stub
}
@Override
public void Attack() {
// TODO Auto-generated method stub
System.out.println("后卫"+name+"进攻");
}
@Override
public void Defense() {
// TODO Auto-generated method stub
System.out.println("后卫"+name+"防守");
}
}
public class Forwards extends Player{
public Forwards(String name) {
super(name);
// TODO Auto-generated constructor stub
}
@Override
public void Attack() {
// TODO Auto-generated method stub
System.out.println("前锋"+name+"进攻");
}
@Override
public void Defense() {
// TODO Auto-generated method stub
System.out.println("前锋"+name+"防守");
}
}
但是由于姚明同学是外籍人,所以写一个外籍的运动员
public class ForeignCenter {
private String name;
public void jingong()
{
System.out.println("外籍中锋"+name+"进攻");
}
public void fangshou()
{
System.out.println("外籍中锋"+name+"防守");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
再给姚明配一个翻译
public class Translator extends Player{
private ForeignCenter foreignCenter = new ForeignCenter();
public Translator(String name) {
super(name);
// TODO Auto-generated constructor stub
foreignCenter.setName(name);
}
@Override
public void Attack() {
// TODO Auto-generated method stub
foreignCenter.jingong();
}
@Override
public void Defense() {
// TODO Auto-generated method stub
foreignCenter.fangshou();
}
}
再写测试类
public class Program {
public static void main(String[] args) {
// TODO Auto-generated method stub
Player bPlayer =new Forwards("巴蒂尔");
bPlayer.Attack();
Player mPlayer=new Guards("麦迪");
mPlayer.Attack();
Player ym =new Translator("姚明");
ym.Attack();
ym.Defense();
}
}