《Android源码设计模式解析与实战》读书笔记-责任链模式分析

2017-03-09  本文已影响11人  appcompat_v7

责任链模式

介绍

对于链式结构,将每一个节点看做一个对象,每一个对象拥有不同的处理逻辑,将一个请求从链式的首端发出,沿着链的路径一次传递给一个节点对象,直至有对象处理这个请求为止,我们将这样一种模式成为责任链模式。

定义

使多个对象都有机会处理请求,从而避免了发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递改请求,直到有对象处理它为止。

使用场景

基本程序

public abstract class Handler {
    protected Handler nextHandler;//下一节点处理者

    public abstract void handle(String condition);//处理函数
}

public class FirstHandler extends Handler {
    @Override
    public void handle(String condition) {
        if (condition.equals("FirstHandler")) {
            handle(condition);
        } else {
            nextHandler.handle(condition);
        }
    }
}
public class SecondHandler extends Handler {
    @Override
    public void handle(String condition) {
        if (condition.equals("SecondHandler")) {
            handle(condition);
        } else {
            nextHandler.handle(condition);
        }
    }
}

角色介绍:

Android 中应用

类似于 Android 中事件的分发处理, 有序广播。

总结

上一篇 下一篇

猜你喜欢

热点阅读