当前位置: 首页 > news >正文

怎么不花钱建网站网站开发工程师薪资

怎么不花钱建网站,网站开发工程师薪资,上海百度研发中心,wordpress 卡当对象间存在一对多关系时#xff0c;则使用观察者模式#xff08;Observer Pattern#xff09;。比如#xff0c;当一个对象被修改时#xff0c;则会自动通知它的依赖对象。观察者模式属于行为型模式。 关键代码#xff1a;在抽象类里有一个 ArrayList 存放观察者们。 优… 当对象间存在一对多关系时则使用观察者模式Observer Pattern。比如当一个对象被修改时则会自动通知它的依赖对象。观察者模式属于行为型模式。 关键代码在抽象类里有一个 ArrayList 存放观察者们。 优点 1、观察者和被观察者是抽象耦合的。 2、建立一套触发机制。 缺点 1、如果一个被观察者对象有很多的直接和间接的观察者的话将所有的观察者都通知到会花费很多时间。 2、如果在观察者和观察目标之间有循环依赖的话观察目标会触发它们之间进行循环调用可能导致系统崩溃。 3、观察者模式没有相应的机制让观察者知道所观察的目标对象是怎么发生变化的而仅仅只是知道观察目标发生了变化。 注意事项 1、JAVA 中已经有了对观察者模式的支持类。 2、避免循环引用。 3、如果顺序执行某一观察者错误会导致系统卡壳一般采用异步方式。 创建 Observer 类。/*** 1. 创建 Observer 类。* author mazaiting*/ public abstract class Observer {protected Subject subject;public abstract void update(); }创建 Subject 类。/*** 2. 创建 Subject 类。* author mazaiting*/ public class Subject {private ListObserver observers new ArrayListObserver();private int state;public int getState() {return state;}public void setState(int state) {this.state state;notifyAllObservers();}/*** 添加观察者*/public void attach(Observer observer){observers.add(observer);}/*** 通知全部观察者更新数据*/public void notifyAllObservers(){for (Observer observer : observers) {observer.update();}} }创建实体观察者类/*** 3. 创建实体观察者类。* author mazaiting*/ public class BinaryObserver extends Observer{public BinaryObserver(Subject subject) {this.subject subject;this.subject.attach(this);}Overridepublic void update() {System.out.println( Binary String: Integer.toBinaryString(subject.getState())); }}/*** 3. 创建实体观察者类。* author mazaiting*/ public class OctalObserver extends Observer{public OctalObserver(Subject subject) {this.subject subject;this.subject.attach(this);}Overridepublic void update() {System.out.println( Octal String: Integer.toOctalString( subject.getState() ) );}}/*** 3. 创建实体观察者类。* author mazaiting*/ public class HexaObserver extends Observer{public HexaObserver(Subject subject) {this.subject subject;this.subject.attach(this);}Overridepublic void update() {System.out.println( Hex String: Integer.toHexString( subject.getState() ).toUpperCase() ); }}使用Subject和实体观察者对象/*** 4. 使用 Subject 和实体观察者对象。* author mazaiting*/ public class Client {public static void main(String[] args) {Subject subject new Subject();new HexaObserver(subject);new OctalObserver(subject);new BinaryObserver(subject);System.out.println(First state change: 15);subject.setState(15);System.out.println(Second state change: 10);subject.setState(10);} }打印结果First state change: 15 Hex String: F Octal String: 17 Binary String: 1111 Second state change: 10 Hex String: A Octal String: 12 Binary String: 1010
http://www.yutouwan.com/news/16212/

相关文章:

  • 网站建设服务器对比青岛浩瀚网络技术有限公司
  • 前端网站建设插件那些公司做网站比较厉害
  • 网站制作者素材视频 素材库
  • 建一个手机网站多少钱小锋云主机
  • vs2017 网站开发环境社区团购系统开发
  • 装修队做网站铜仁市住房和城乡建设厅网站
  • 最新微网站建设价格yfcms企业网站建设
  • 怎么做套系网站ui网页设计论文
  • 手机网站大全123456站点
  • 北京建设公司网站动物大联盟微信小程序入口
  • qq刷赞网站怎么做简单网站制作
  • 上海哪家网站建得好网站源码建设模板
  • wordpress是建站最快的上海有实力的seo推广咨询
  • 网址怎么申请注册网站优化主要内容
  • 做go富集的网站下一页p30
  • 广东专业移动网站建设哪家好58同城的网站怎么做的
  • 做外贸网站费用17173游戏网
  • 如何做单位网站湖南省建设信息网站查询
  • 学网站建设需要多久asp网站安全
  • 网站关健词排名新闻静态网站模板
  • 徐州如何提高网站建设做水果的有什么网站
  • 汶上网站建设网站建设经验交流
  • wordpress小工具用不百度seo优化教程免费
  • 网站seo怎么优化wordpress无法安装
  • 词条有哪些网站可以做建设优化网站
  • 响应式网站开发报价网站直播间 是怎么做的
  • 免费的游戏网站建设做app网站的软件
  • 深圳建设交易信息网站广告设计怎么接单
  • 网站制作简单协议杭州 网站开发公司
  • 注册网站需要多少wordpress 分类列表插件