Chan of Responsibility 责任链模式

设计原则学习笔记
设计模式学习笔记

作用

将请求以其职责拆成,并以链的结构组合,使请求在链中传递并且可以在链中拦截请求。

类图

Chan of Responsibility 责任链模式_第1张图片
责任链模式

Java实现

//定义handler
public abstract class Handler {
    protected Handler handler;
    public abstract void handleRequest();
}
public class HandlerA extends Handler {
    public HandlerA() {
        handler = new HandlerB();
    }

    @Override
    public void handleRequest() {
        handler.handleRequest();
    }
}
public class HandlerB extends Handler{
    @Override
    public void handleRequest() {

    }
}
//客户端调用责任链
public class Client {
    public static void main(String[] args) {
        Handler handler = new HandlerA();
        handler.handleRequest();
    }
}

Android源码中的应用

  • View的点击事件分发
  • Okhttp

你可能感兴趣的:(Chan of Responsibility 责任链模式)