您的位置:首页 > 其它

23种设计模式之适配器模式

2012-12-10 09:23 323 查看
package dp.adapter;

/**
* 我们吃饭就是等上齐了一起吃,非吃即喝,反正一直嘴不停的吃
* 被适配的类
*/
public class MyEat {

public void eat(){
System.out.println("吃饭");
}

public void drink(){
System.out.println("喝汤");
}
}

package dp.adapter;

/**
* MM吃饭方式步骤
* 适配的目标接口
*/
public interface MMeatTarget {
/**
*<p>MM喝饭前汤</p>
*/
public void eatFanQitanTang();
/**
*<p>MM吃正餐</p>
*/
public void eatZhengCan();
/**
*<p>MM吃饭后水果</p>
*/
public void eatFanHouShuiGuo();
}

package dp.adapter;

public class Adapter implements MMeatTarget{

public MyEat me = new MyEat();

public Adapter(MyEat me){
this.me = me;
}
@Override
public void eatFanHouShuiGuo() {
System.out.println("我正在按照MM的步骤吃饭后水果");
me.eat();
}

@Override
public void eatFanQitanTang() {
System.out.println("我正在按照MM的步骤吃饭前汤");
me.drink();
}

@Override
public void eatZhengCan() {
System.out.println("我正在按照MM的步骤吃饭正餐");
me.eat();
me.drink();
}

}

package dp.adapter;

public class Client {
public static void main(String[] args) {
MMeatTarget met = new Adapter(new MyEat());
met.eatFanQitanTang();
met.eatZhengCan();
met.eatFanHouShuiGuo();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: