Java责任链设计模式实例分析

网友投稿 233 2023-01-01


Java责任链设计模式实例分析

本文实例讲述了java责任链设计模式。分享给大家供大家参考,具体如下:

一 代码

abstract class AbstractHandler {

private Handler Handler = null;// 持有责任链中下一个责任处理者的引用

public void setHandler( Handler handler ) {

this.Handler = handler;

}

public Handler getHandler() {

return Handler;

}

}

interface Handler {

public void operator(); // 处理份内工作的方法

}

class MyHandler extends AbstractHandler implements Handler {

private String name;

public MyHandler( String name ) {

this.name = name;

}

@Override

public void operator() {

System.out.println(name + ":责任经过我头上!!");

if (getHandler() != null) {

System.out.println(name + ":我把责任交给了" + getHandler());

getHandler().operator();

} else {

System.out.println(name + "我处理了责任!!");

}

}

@Override

public String toString() {

return name;

}

}

public class TestChainOfResponsibility {

publiWHqlfSc static void main( String[] args ) {

MyHandler h1 = new MyHandler("h1");// 新建一个名字为h1的事务处理者

MyHandler h2 = new MyHandler("h2");// 新建一个名字为h2的事务处理者

MyHandler h3 = new MyHandler("h3");// 新建一个名字为h3的事务处理者

h1.setHandler(h2);// h1的下级设为h2,那么h1可以把责任交给h2

h2.setHandler(h3);// h2的下级设为h3,那么h2可以把责任交给h3

h1.operator();// 调用h1的事务处理函数

}

}

二 运行

h1:责任经过我头上!!

h1:我把责任交给了h2

h2:责任经过我头上!!

h2:我把责任交给了h3

h3:责任经过我头上!!

h3我处理了责任!!

三 类图

更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微服务网关需要单独部署吗(微服务架构中服务网关的作用)
下一篇:Java 信息摘要加密MD2、MD4、MD5实现详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~