责任链模式

抽象类的定义如下,保存下一个handler来处理后续的业务,同时本体也要处理自己的业务。

public abstract classHandler{

    protected Handler handler;

    public void setHandler(Handler handler){

        this.handler = handler;

    }

    public abstract void handleRequest(Integer times);

}

具体实现如下

public class FirstInterview extends Handler{

    @Override

    public void handleRequest(Integer times){

        // 条件判断是否是属于当前Handler的处理范围之内,不是则向下传递Handler处理器

        if(times ==1){

          // 假设这里是处理的业务逻辑代码

            System.out.println("第一次面试"+times);

        }

        handler.handleRequest(times);

    }

}


public class ThreeInterview extends Handler{

    @Override

    public void handleRequest(Integer times){

        if (times == 3) {

            System.out.println("第三次面试"+ times + ",恭喜面试通过,HR会跟你联      系!!!");

        }

    }

    public static void main(String[] args){

        Handler first = new FirstInterview();

        Handler second = new SecondInterview();

        Handler three = new ThreeInterview();

        first.setHandler(second);

        second.setHandler(three);

        // 第一次面试

        first.handleRequest(1);

        System.out.println();

        // 第二次面试

        first.handleRequest(2);

        System.out.println();

        // 第三次面试

        first.handleRequest(3);

        System.out.println();

    }

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容