标签:
package lp5;
public interface Robot { //机器人接口
void cry();
void move();
}
package lp5;
public class Application {
public static void main (String args[])
{
Dog dog=new Dog();
Robot dogRobot=new DogAdapter(dog);
dogRobot.cry();
dogRobot.move();
Bird bird=new Bird();
Robot birdRobot=new BirdAdapter(bird);
birdRobot.cry();
birdRobot.move();
}
}
1 package lp5; 2 3 public class BirdAdapter implements Robot { 4 Bird bird; 5 public BirdAdapter(Bird bird) 6 { 7 this.bird=bird; 8 } 9 public void cry() 10 { 11 System.out.println("机器人模拟小鸟叫"); 12 bird.jiji(); 13 } 14 public void move() 15 { 16 System.out.println("机器人模拟小鸟飞"); 17 bird.fly(); 18 } 19 }
1 package lp5; 2 3 public class Dog { 4 public void wang() 5 { 6 System.out.println("小狗汪汪叫"); 7 } 8 public void run() 9 { 10 System.out.println("小狗快快跑"); 11 } 12 }
package lp5;
public class DogAdapter implements Robot //DogAdapter小狗适配器类
{
Dog dog;
public DogAdapter(Dog dog)
{
this.dog=dog;
}
public void cry()
{
System.out.println("机器人模拟狗叫");
dog.wang();
}
public void move()
{
System.out.println("机器人模拟狗跑");
dog.run();
}
}
1 package lp5; 2 3 public class Bird { 4 public void jiji() 5 { 6 System.out.println("小鸟唧唧叫"); 7 } 8 public void fly() 9 { 10 System.out.println("小鸟慢慢飞"); 11 } 12 }
4 public static void main (String args[]) 5 { 6 Dog dog=new Dog(); 7 Robot dogRobot=new DogAdapter(dog); 8 dogRobot.cry(); 9 dogRobot.move(); 10 Bird bird=new Bird(); 11 Robot birdRobot=new BirdAdapter(bird); 12 birdRobot.cry(); 13 birdRobot.move(); 14 15 } 16 }
标签:
原文地址:http://www.cnblogs.com/fanerna/p/5400633.html