Chinaunix首页 | 论坛 | 博客
  • 博客访问: 35935
  • 博文数量: 12
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 184
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-22 11:52
文章分类
文章存档

2014年(12)

我的朋友

分类: 网络与安全

2014-06-04 09:25:17

1、修饰模式

通过增加子类的方式来扩展功能,而不是通过继承

具体的方式如下

interface inter

{

    void do();

}


A implements inter{

    public void do(){

//doSomething;

    }

}


B implements inter{

    A a;

    public void do(){

//额外的功能

a.do();

//额外的功能

    }


}


2、职责链

有一系列负责处理的类,实现相同的接口,具有大致相同的方法

大致讲就是:我能处理就处理,处理不了就交给其它类来处理

核心的代码就是: handler 为处理类的接口

class A implements handler{

    B b;

    public void do{

        if(条件成立){

            A的具体解决方案;

        }else{

            b.do();

        }

    }

}

class B implements handler{

    C c;

    public void do{

        if(条件成立){

            B的具体解决方案;

        }else{

            c.do();

        }

    }

}

这样就串起来了,很容易理解为什么叫职责链

使用条件:所有的情况都已经知道,但不知道具体用哪一种解决方案
阅读(1831) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~