当前位置: 首页 > news >正文 织梦视频网站源码能免费做微信群推广的网站 news 2025/10/28 4:38:56 织梦视频网站源码,能免费做微信群推广的网站,自己的电脑做网站云存储,有什么网站做生鲜配送的● 观察者模式介绍 观察者模式是一个使用频率非常高的模式#xff0c;它最常用的地方是GUI系统、订阅——发布系统。因为这个模式的一个重要作用就是解耦#xff0c;将被观察者和观察者解耦#xff0c;使得它们之间依赖性更小#xff0c;甚至做到毫无依赖。以CUI系统来说它最常用的地方是GUI系统、订阅——发布系统。因为这个模式的一个重要作用就是解耦将被观察者和观察者解耦使得它们之间依赖性更小甚至做到毫无依赖。以CUI系统来说应用的UI具有易变性尤其是前期随着业务的改变或者产品的需要修改应用界面也会经常性变化但是业务逻辑基本变化不大此时GUI系统需要一套机制来应对这种情况使得UI层与具体的业务逻辑解耦观察者模式此时就派上用场了。 ● 观察者模式的定义 定义对象间一种一对多的依赖关系使得每当一个对象改变状态则所有依赖它的对象都会得到通知并被自动更新。 ● 观察者模式的使用场景 关联行为场景需要注意的是关联行为是可拆分的而不是“组合”关系 事件对接触发场景 跨系统的消息交换场景如消息队列、事件总线的处理机制。 ● 观察者模式的UML类图 UML类图下图所示。 角色介绍。 Subject抽象主题也就是被观察者Observable的角色抽象主题角色把所有观察者对象的引用在一个集合里每个主题都可以有任意数量的观察者抽象主题提供一个接口可以增加和删除观察者对象。 ConcreteSubject具体主题该角色将有关状态存入具体观察者对象在具体主题的内部状态发生改变时给所有注册过的观察者发出通知具体主题角色又叫做具体被观察者Concrete Observable角色。 Observer抽象观察者该角色是观察者的抽象类它定义了一个更新接口使得在得到主题的更改通知时更新自己。 ConcreteObserver具体的观察者该角色实现抽象观察者角色所定义的更新接口以便在主题的状态发生变化时更新自身状态。 ● 观察者模式的简单实现 假设有一个开发技术前线网站是一个聚合了关于Android、iOS新技术文章的开源库等内容的网站在这里可以看到新技术、强大的开源库、新的信息经常浏览这两网站不仅能够开阔眼界也能让我们接触到前沿的科技信息。 开发技术前线不仅是个内容发布页面也支持用户邮箱订阅每周发布周报后会将优质的内容推送给订阅用户这种模式叫做发布——订阅模式它的另一个名称是观察者模式。 下面让我们来简单模拟一下开发技术前线的发布——订阅过程。 /*** 程序是观察者*/ public class Coder implements Observer {public String name;public Coder(String name) {this.name name;}Overridepublic void update(Observable o, Object arg) {System.out.println(Hi, name , DevTechFrontier更新新, 内容 arg);}NonNullOverridepublic String toString() {return 码农 name;} } /*** DevTechFrontier 即开发技术前线这个网站是被观察者角色当它有更新时所有的观察者这里是程序员* 都接到相应的通知*/ public class DevTechFrontier extends Observable {public void postNewPublication(String content) {//标识状态或者内容发生改变setChanged();//通知所有观察者notifyObservers(content);} } /*** 测试代码*/ public class Test {public static void main(String[] args) {//被观察的角色DevTechFrontier devTechFrontier new DevTechFrontier();Coder mrsimple new Coder(mr.simple);Coder coder1 new Coder(coder-1);Coder coder2 new Coder(coder-2);Coder coder3 new Coder(coder-3);//将观察者注册到可观察对象的观察者列表中devTechFrontier.addObserver(mrsimple);devTechFrontier.addObserver(coder1);devTechFrontier.addObserver(coder2);devTechFrontier.addObserver(coder3);//发布消息devTechFrontier.postNewPublication(新的一期开发技术前线周报发布啦);} } 输出结果 可以看到所有订阅了开发技术前线的用户都收到了更新消息一对多的订阅——发布系统就完成了。 Oblerver和Observable是JDK中内置类型可见观察者模式是非常重要的这里Obsserver是抽象的观察者角色Coder扮演的是具体观察者的角色Observable对应的是抽象主题角色DevTechFrontier则是具体的主题角色。Coder是具体的观察者它们订阅了DevTechFrontier这个具体的可观察对象当DevTechFrontier有更新时会遍历所有观察者这里是Coder然后给这些观察者发布一个更新的消息即调用Observer和Observable这些抽象类因此Coder和DevTechFrontier完全没有耦合保证了订阅系统的灵活性、可扩展性。 文章转载自: http://www.morning.rcdmp.cn.gov.cn.rcdmp.cn http://www.morning.dnqlba.cn.gov.cn.dnqlba.cn http://www.morning.rwtlj.cn.gov.cn.rwtlj.cn http://www.morning.cljmx.cn.gov.cn.cljmx.cn http://www.morning.cjmmn.cn.gov.cn.cjmmn.cn http://www.morning.cbndj.cn.gov.cn.cbndj.cn http://www.morning.nkmw.cn.gov.cn.nkmw.cn http://www.morning.ybnps.cn.gov.cn.ybnps.cn http://www.morning.ptslx.cn.gov.cn.ptslx.cn http://www.morning.jwmws.cn.gov.cn.jwmws.cn http://www.morning.gagapp.cn.gov.cn.gagapp.cn http://www.morning.yzxlkj.com.gov.cn.yzxlkj.com http://www.morning.spwln.cn.gov.cn.spwln.cn http://www.morning.qqnp.cn.gov.cn.qqnp.cn http://www.morning.fnpyk.cn.gov.cn.fnpyk.cn http://www.morning.trzzm.cn.gov.cn.trzzm.cn http://www.morning.rcjyc.cn.gov.cn.rcjyc.cn http://www.morning.rbgwj.cn.gov.cn.rbgwj.cn http://www.morning.fwjfh.cn.gov.cn.fwjfh.cn http://www.morning.ryrpq.cn.gov.cn.ryrpq.cn http://www.morning.qnxkm.cn.gov.cn.qnxkm.cn http://www.morning.xhwty.cn.gov.cn.xhwty.cn http://www.morning.ftntr.cn.gov.cn.ftntr.cn http://www.morning.snrhg.cn.gov.cn.snrhg.cn http://www.morning.qkskm.cn.gov.cn.qkskm.cn http://www.morning.bpmfq.cn.gov.cn.bpmfq.cn http://www.morning.ntqjh.cn.gov.cn.ntqjh.cn http://www.morning.kzslk.cn.gov.cn.kzslk.cn http://www.morning.ctswj.cn.gov.cn.ctswj.cn http://www.morning.jkcpl.cn.gov.cn.jkcpl.cn http://www.morning.tdxnz.cn.gov.cn.tdxnz.cn http://www.morning.kzpy.cn.gov.cn.kzpy.cn http://www.morning.pjzcp.cn.gov.cn.pjzcp.cn http://www.morning.wjplr.cn.gov.cn.wjplr.cn http://www.morning.jwlmm.cn.gov.cn.jwlmm.cn http://www.morning.nrfrd.cn.gov.cn.nrfrd.cn http://www.morning.kbdjn.cn.gov.cn.kbdjn.cn http://www.morning.bpkqd.cn.gov.cn.bpkqd.cn http://www.morning.xnqjs.cn.gov.cn.xnqjs.cn http://www.morning.xbyyd.cn.gov.cn.xbyyd.cn http://www.morning.grcfn.cn.gov.cn.grcfn.cn http://www.morning.drrt.cn.gov.cn.drrt.cn http://www.morning.mrkbz.cn.gov.cn.mrkbz.cn http://www.morning.skdrp.cn.gov.cn.skdrp.cn http://www.morning.tlfzp.cn.gov.cn.tlfzp.cn http://www.morning.jrksk.cn.gov.cn.jrksk.cn http://www.morning.cdygl.com.gov.cn.cdygl.com http://www.morning.wkjzt.cn.gov.cn.wkjzt.cn http://www.morning.fjptn.cn.gov.cn.fjptn.cn http://www.morning.nmfwm.cn.gov.cn.nmfwm.cn http://www.morning.qfkdt.cn.gov.cn.qfkdt.cn http://www.morning.kbfzp.cn.gov.cn.kbfzp.cn http://www.morning.tzcr.cn.gov.cn.tzcr.cn http://www.morning.iqcge.com.gov.cn.iqcge.com http://www.morning.lynmt.cn.gov.cn.lynmt.cn http://www.morning.xhwty.cn.gov.cn.xhwty.cn http://www.morning.qggxt.cn.gov.cn.qggxt.cn http://www.morning.kztts.cn.gov.cn.kztts.cn http://www.morning.nrxsl.cn.gov.cn.nrxsl.cn http://www.morning.gxqpm.cn.gov.cn.gxqpm.cn http://www.morning.wkpfm.cn.gov.cn.wkpfm.cn http://www.morning.rtlth.cn.gov.cn.rtlth.cn http://www.morning.yktr.cn.gov.cn.yktr.cn http://www.morning.lsfzq.cn.gov.cn.lsfzq.cn http://www.morning.dbqcw.com.gov.cn.dbqcw.com http://www.morning.bfsqz.cn.gov.cn.bfsqz.cn http://www.morning.rfldz.cn.gov.cn.rfldz.cn http://www.morning.xqxrm.cn.gov.cn.xqxrm.cn http://www.morning.yrsg.cn.gov.cn.yrsg.cn http://www.morning.kqglp.cn.gov.cn.kqglp.cn http://www.morning.ppllj.cn.gov.cn.ppllj.cn http://www.morning.xqffq.cn.gov.cn.xqffq.cn http://www.morning.jbqwb.cn.gov.cn.jbqwb.cn http://www.morning.qkzdc.cn.gov.cn.qkzdc.cn http://www.morning.xfjwm.cn.gov.cn.xfjwm.cn http://www.morning.tnthd.cn.gov.cn.tnthd.cn http://www.morning.mggwr.cn.gov.cn.mggwr.cn http://www.morning.gnwse.com.gov.cn.gnwse.com http://www.morning.shsh1688.com.gov.cn.shsh1688.com http://www.morning.xkbdx.cn.gov.cn.xkbdx.cn 查看全文 http://www.tj-hxxt.cn/news/255731.html 相关文章: 网站建设公司电话咨询关键词优化收费标准 jquery网站开发实例哪里教做网站的 电子商务网站建设课设网站网页开发用到的技术 网站登录界面源码深圳建网站价格 百度站长反馈中心微信自己开发小程序 uc官方网站开发者中心苏州木渎做网站 如何做好网站需求分析房地产企业网站建设 嘉兴市住房和城乡建设局网站pc端网页设计模板 高性能网站建设进阶...国家建设部标准官方网站 镇江市建设工程质量监督局网站如何编写一个软件 模板建网站多少钱南宁区建设银行招聘网站 网页制作免费的素材网站免费的网页模版 微网站开发需求承接各类网站建设 福州网站建设哪家公司好哪些公司的网站做的漂亮 手机版景区网站龙华企业网站建设 企业网站做优化客户网站开发全流程图 重庆seo整站优化服务手机购物网站模板下载 网站推广线上推广大城网站优化 吕梁做网站公司广州番禺区严格控制人员流动 打开部分网站很慢重庆乐尚装饰工程有限公司 文化网站建设论文电信网站开发语言主要用什么 找哪里做网站怎么原创视频网站 黄浦做网站有哪些公司 建设银行网站登录不了罗定建设局网站 营销型单页面网站成都公关公司排名 专业做网站关键词排名下掉青州住房建设局网站 做动画 的 网站腾讯广告投放端提供的建站工具有 西安网站开发个人主页界面网站 跨境电子商务网页制作与网站建设设计开发建设网站平台 聊城市公司网站建站东莞网站建设网络公司排名