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

怎么登陆建设工程网站如何创建一个简单的网站

怎么登陆建设工程网站,如何创建一个简单的网站,车务网站开发,查询商标注册的官方网观察者模式用于建立对象间一对多的依赖关系。当一个对象(主题)状态改变时,所有依赖它的对象(观察者)都会自动收到通知并更新。核心组件主题 (Subject)维护观察者列表,提供注册/注销方法,通知观察…

观察者模式用于建立对象间一对多的依赖关系。当一个对象(主题)状态改变时,所有依赖它的对象(观察者)都会自动收到通知并更新。

核心组件
  1. 主题 (Subject)
    维护观察者列表,提供注册/注销方法,通知观察者状态变化

    import java.util.ArrayList;
    import java.util.List;public abstract class Subject {private List<Observer> observers = new ArrayList<>();public void attach(Observer o) {observers.add(o);}public void detach(Observer o) {observers.remove(o);}public void notifyObservers() {for (Observer o : observers) {o.update();}}
    }
    

  2. 观察者 (Observer)
    定义更新接口,接收主题通知

    public interface Observer {void update();
    }
    

具体实现示例

主题实现类

public class ConcreteSubject extends Subject {private int state;public int getState() {return state;}public void setState(int state) {this.state = state;notifyObservers();  // 状态变化时通知观察者}
}

观察者实现类

public class ConcreteObserver implements Observer {private String name;private ConcreteSubject subject;public ConcreteObserver(String name, ConcreteSubject subject) {this.name = name;this.subject = subject;subject.attach(this);  // 自动注册到主题}@Overridepublic void update() {System.out.println(name + " 收到更新: 状态值 = " + subject.getState());}
}

使用示例
public class Client {public static void main(String[] args) {ConcreteSubject subject = new ConcreteSubject();new ConcreteObserver("观察者A", subject);new ConcreteObserver("观察者B", subject);subject.setState(10);  // 触发通知subject.setState(20);  // 再次触发通知}
}

输出结果
观察者A 收到更新: 状态值 = 10
观察者B 收到更新: 状态值 = 10
观察者A 收到更新: 状态值 = 20
观察者B 收到更新: 状态值 = 20

模式优势
  1. 松耦合:主题无需知道观察者的具体实现
  2. 动态关系:可随时添加/删除观察者
  3. 广播通信:一次状态变化可通知多个对象
  4. 符合开闭原则:新增观察者无需修改主题代码
典型应用场景
  • GUI 事件处理(如按钮点击)
  • 消息订阅系统
  • 股票价格变动通知
  • 游戏中的成就系统
  • 分布式系统的状态同步

注意:Java 内置 java.util.ObservableObserver 接口已过时(Java 9+),推荐使用自定义实现或 java.beans.PropertyChangeListener 替代。

http://www.dtcms.com/wzjs/782122.html

相关文章:

  • 深圳网站优化建设做h5网站设计
  • 会议平台网站建设甘肃找人做网站多少钱
  • 电子商务和网站建设区别婚庆公司一条龙项目
  • 上海网站制作培训广州网站制作信科建设
  • 部门网站建设手机做app任务的网站
  • 网站建设目标和功能介绍河南建设资格执业网站
  • 诸暨公司制作网站需要哪些大数据和网站建设
  • 苏州网站建设凡科阿里快速建站
  • 郑州建设银行网站房贷网点在哪搜索引擎优化的方法有哪些?
  • 慢慢来 网站建设快速网站模板公司
  • 重庆定制网站建设地址wordpress信息量几百万
  • ui设计基础淘宝seo是什么意思啊
  • 资生堂网站建设新浪云应用 wordpress
  • 做搜索的网站网站网页建设与维护
  • 郑州巩义网站建设博客程序seo
  • seo撰写网站标题以及描述的案例星子网房产租房
  • 做视频网站的上市公司建设工程是指哪些工程
  • 太原中小学网站建设网站开发学历要求
  • 一个人做网站原型哪个网站公司做的
  • 医院网站建设 价格wordpress主题下载zip
  • 湖南哪里有做网站的刷百度关键词排名
  • 有没有专业做电视测评的网站模板网优酷
  • 企业网站策划进度插件 wordpress
  • 商城网站建设是 什么软件国内包装设计网站
  • 中国建设银行海南省分行网站网站建设教程百度网盘
  • 福田做商城网站建设多少钱上海公关公司排行榜
  • 网站数据库做好了 怎么做网页大学生可以做的网站项目
  • 财务管理做的好的门户网站谁能做网站开发
  • 余杭区住房与建设局网站深圳建设交易信息网站
  • 大型网站开发用的技术网上商城小程序开发