MyException - 我的异常网
当前位置:我的异常网» 设计模式 » 七.适配器模式

七.适配器模式

www.MyException.Cn  网友分享于:2018-05-29  浏览:0次
7.适配器模式

1.需要适配的两个接口

public interface Duck {
	public void quack();
	public void fly();
}
public interface Turkey {
	public void gobble();
	public void fly();
}

2.适配器转换接口

//这里是披着鸭皮的火鸡
public class TurkeyAdapter implements Duck { private Turkey turkey; public TurkeyAdapter(Turkey turkey){ this.turkey=turkey; } public void quack() { // TODO Auto-generated method stub this.turkey.gobble(); } public void fly() { // TODO Auto-generated method stub turkey.fly(); } }

3.具体实现需要适配的接口的类

public class MallardDuck implements Duck{

	public void quack() {
		System.out.println("MallardDuck quack");
	}

	public void fly() {
		System.out.println("MallardDuck fly");
	}

}

public class WildTuekey implements Turkey{

	public void gobble() {
		// TODO Auto-generated method stub
		System.out.println("WildTuekey gobble");
	}

	public void fly() {
		// TODO Auto-generated method stub
		System.out.println("WildTuekey fly");
	}

}

4.应用

public class App {
	public static void main(String[] args) {
		MallardDuck duck=new MallardDuck();
		WildTuekey turkey=new WildTuekey();
		TurkeyAdapter adapter=new TurkeyAdapter(turkey);
		duck.fly();
		duck.quack();
		adapter.fly();
		adapter.quack();
		turkey.fly();
		turkey.gobble();
	}
}

5.接口应该是这样的,鸭接口调出来 的是火鸡的方法

 

文章评论

相关解决方案
  • 暂无相关解决方案
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有