适配器模式(Adapter)

6.  适配器模式(Adapter)

 

     模式所设计的角色有:

  • 目标角色(Target): 这里是所期待得到的接口。此目标不可以是类。
  • 源角色(Adaptee): 现有需要适配的具体类,要包装类中的方法。
  • 适配器(Adapter): 把源接口转换成目标接口。适配器必须是具类。                                                          

      例子: 请做一个Kittie的具体类,并实现miao(), catchRat(), run() , sleep()方法,在做一个接口Puppie,要求有   wao(), fetchBall(),  run() , sleep()等方法。

      假设现在John有个朋友想要一只Puppie,可是只找到一只Kittie, John需要使用适配器模式把Kittie适配成Puppie,让他朋友满意。请问John该怎么做。

 

      代码:

     

    

/** 
* 源角色(Adaptee)-------具体类 
* 
*/ 
public class Kittie { 

public void miao(){} 
public void catchRat(){} 
public void run(){} 
public void sleep(){} 

}

 

/**
 * 目标角色(Target)
 *
 */

public interface Puppie {
	void wao();
	void fetchBall();
	void run();
	void sleep();
}

    

/**
 * 适配器Adapter 
 *
 */
public class John extends Kittie implements Puppie {

	public void fetchBall() {
		this.catchRat();
	}

	public void wao() {
		this.miao();
	}
	
	public void run(){
		super.run();
	}
	
	public void sleep(){
		super.sleep();
	}


}

          

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值