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

vue.js 可以做网站吗镇江百度推广

vue.js 可以做网站吗,镇江百度推广,上海袜网站建设,国家在线观看免费视频Java 观察者模式(Observer Pattern)详解 🧠 什么是观察者模式? 观察者模式是一种行为型设计模式,定义对象之间的一种一对多的依赖关系,使得每当一个对象状态发生变化时,所有依赖它的对象都会得…

Java 观察者模式(Observer Pattern)详解

🧠 什么是观察者模式?

观察者模式是一种行为型设计模式,定义对象之间的一种一对多的依赖关系,使得每当一个对象状态发生变化时,所有依赖它的对象都会得到通知并自动更新。


🎯 使用场景

  • 一个对象状态的变化需要通知多个对象
  • 系统中存在一对多的依赖关系
  • 实现事件处理系统(如GUI、订阅/发布)

🏗️ 模式结构

  • Subject(主题):被观察的对象,提供注册和移除观察者的方法
  • Observer(观察者):定义响应更新的方法
  • ConcreteSubject / ConcreteObserver:具体实现类

✅ 示例:天气预报系统

观察者接口(Observer)

public interface Observer {void update(float temperature, float humidity, float pressure);
}

主题接口(Subject)

public interface Subject {void registerObserver(Observer o);void removeObserver(Observer o);void notifyObservers();
}

具体主题类

import java.util.ArrayList;
import java.util.List;public class WeatherData implements Subject {private List<Observer> observers = new ArrayList<>();private float temperature;private float humidity;private float pressure;@Overridepublic void registerObserver(Observer o) {observers.add(o);}@Overridepublic void removeObserver(Observer o) {observers.remove(o);}@Overridepublic void notifyObservers() {for (Observer o : observers) {o.update(temperature, humidity, pressure);}}public void setMeasurements(float temperature, float humidity, float pressure) {this.temperature = temperature;this.humidity = humidity;this.pressure = pressure;notifyObservers();}
}

具体观察者类

public class CurrentConditionsDisplay implements Observer {private float temperature;private float humidity;@Overridepublic void update(float temperature, float humidity, float pressure) {this.temperature = temperature;this.humidity = humidity;display();}public void display() {System.out.println("当前温度:" + temperature + "℃,湿度:" + humidity + "%");}
}

客户端调用

public class WeatherStation {public static void main(String[] args) {WeatherData weatherData = new WeatherData();CurrentConditionsDisplay display = new CurrentConditionsDisplay();weatherData.registerObserver(display);weatherData.setMeasurements(26.5f, 65.0f, 1013.0f);}
}

✅ 优点

  • 降低耦合性,实现松散耦合的通知机制
  • 易于添加新观察者,符合开闭原则

⚠️ 缺点

  • 观察者太多时通知会影响性能
  • 通知链可能较复杂,调试困难

🧩 使用建议

适合构建事件驱动系统、发布订阅模型,也广泛应用于GUI框架、MVC架构中。

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

相关文章:

  • web怎么制作网页谷歌seo搜索引擎
  • 电子商务网站的设计与实现今天微博热搜前十名
  • wordpress 前端开发大泽山seo快速排名
  • 如何查看网站在哪里做的ue5培训机构哪家强
  • 建立一个网站需要会什么软件天琥设计培训学校官网
  • 利用万网做网站seo推广专员工作好做吗
  • 什么叫网站优化国外免费网站域名服务器查询软件
  • java做网站下载图片产品推广软文500字
  • 公众平台如何做网站中国国家培训网
  • 青海网站建设西宁网络科技公司seo就业前景
  • 国外采购网站大全拉新平台哪个好佣金高
  • 织梦网站地图如何做网站制作app
  • wordpress qq微信登陆竞价托管优化公司
  • 懒人建站游戏推广赚佣金的平台
  • 邯郸移动网站建设报价九易建网站的建站流程
  • 做推广比较好的网站关键词分析工具
  • wordpress 删除站点民宿平台搜索量上涨
  • 如何提升网站的流量永州网站seo
  • 常用网站开发工具有哪些深圳关键词自动排名
  • 网站制作 公司资质5月疫情第二波爆发
  • 个人网站设计模版htmlseo快速排名百度首页
  • 怎样登陆网站后台百度搜索大数据查询
  • 保定网站设计推荐互联网平台推广是什么意思
  • 东莞公司网站设计网站开发技术
  • 重庆市人民政府网网站推广优化外链
  • 江门住房与城乡建设局官方网站网站seo排名培训
  • 广州推广型网站建设seo关键词排名查询
  • 主题资源网站制作平台提高关键词排名的软文案例
  • 深圳企业网站建设定制开发服务百度小说排行榜
  • 韩国教做发饰的网站怎么做公司网站推广