2007-07-24
(6)结构模式之Adapter 模式
关键字: 模式, pattern
Y先生今天要去买书。Q女士拉住他:“等一下,顺便帮我买点菜回来。”
结果... ... Y先生买完书回来,就把买菜的事给忘了!
Q女士十分生气:你的记性怎么这么差阿!!
Y先生很委屈:买书和买菜根本是两个不同的事,我当然很容易忘了。
Q女士:好,那我现在如果就是要把它们变成一个事呢?
Y先生:你这是违反自然规律... ....
Q女士:哼,那是你不动脑筋!看我的!
买书用这个吧:
java 代码
- public class BuyBook {
- public void buy() {
- }
- }
买菜用这个吧:
java 代码
- public class BuyCai {
- public void buycai() {
- }
- }
Y先生心想:竟然还用拼音!这就是所谓的垃圾的代码的产生了!
可是Y先生不敢这么说。
Y先生:我明白了,你想让我这么做吧:
java 代码
- public static void main(String[] args) {
- BuyBook b1 = new BuyBook();
- BuyCai b2 = new BuyCai();
- b1.buy();
- b2.buycai();
- }
Q女士:这么不行,你还是容易忘,看我的:
java 代码
- public class BuyAdapter extends BuyBook{
- private BuyCai cai;
- public BuyAdapter(BuyCai cai) {
- // TODO Auto-generated constructor stub
- this.cai = cai;
- }
- public void buy() {
- // TODO Auto-generated method stub
- super.buy();
- cai.buycai();
- }
- }
Y先生:我明白了,我应该这么来:
java 代码
- public static void main(String[] args) {
- BuyAdapter adapter = new BuyAdapter(new BuyCai());
- adapter.buy();
- }
Q女士:嗯,这么一来你就不会忘了!怎么样,两个毫不相干的事情被我拧成一起了吧?
Y先生:嗯,老婆真厉害!
其实Y先生是故意不去买菜的... ... 可是现在,他不买也不行了... ...
发表评论
- 浏览: 144976 次

- 详细资料
搜索本博客
我的相册
tdd
共 3 张
共 3 张
最新评论
-
网站的静态页面生成方案
笑 喘 写道yananay 写道 把对 index.do 请求后的结果保存成一个 ...
-- by tianmo2008 -
网站的静态页面生成方案
我曾经尝试过在ASP.NET中做这样的事情,用某户访问某个页面时,先从配置里读取 ...
-- by 活靶子 -
网站的静态页面生成方案
对于CMS静态发布,我用的是用Veocity模板去 生产的,根据一定的业务逻辑去 ...
-- by pablo3518 -
聊聊大连新的残疾人制度
政府张口要钱,什么理由已经不重要了。。。
-- by issppt -
请先不要讨论细节好吗
[quote="ayis"][quote="kimmking"][quote=" ...
-- by gzstyxb






评论排行榜