news 2026/4/16 17:56:42

行为型模式:观察者模式

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
行为型模式:观察者模式

文章目录

  • 天气预报项目需求
  • 天气预报设计方案:普通方案
    • WeatherData 类
    • 示意图
    • 代码实现
    • 问题分析
  • 观察者模式原理
  • 观察者模式解决天气预报需求
    • 类图说明
    • 代码实现
    • 观察者模式的好处
  • 观察者模式在 JDK 应用的源码分析

如果文章对您有用,请关注点赞加收藏,博主会持续更新相关的专栏笔记🫡

天气预报项目需求

天气预报项目需求,具体要求如下:

  • 气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去【比如发布到自己的网站或第三方】。
  • 需要设计开放型 API,便于其他第三方也能接入气象站获取数据。
  • 提供温度、气压和湿度的接口。
  • 测量数据更新时,要能实时的通知给第三方。

天气预报设计方案:普通方案

WeatherData 类

通过对气象站项目的分析,我们可以初步设计出一个 WeatherData 类:

说明:

  • 通过 getXxx() 方法,可以让第三方接入,并得到相关信息。
  • 当数据有更新时,气象站通过调用 dataChange() 去更新数据,当第三方再次获取时,就能得到最新数据,当然也可以推送。

示意图

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 13:52:06

如何写一个可以识别图像数字的基于VIT大模型的简单代码?

直接上代码,源代码来自于kaggle上的大神,经过简单修改得到 # 模型 # 数据 # 训练 from torch.utils.data import Dataset, DataLoader import numpy from PIL import Image class convertDataset(Dataset):def __init__(self, data, transform) -> No…

作者头像 李华
网站建设 2026/4/16 12:14:48

arXiv LaTeX Cleaner 终极指南:一键清理你的论文代码

arXiv LaTeX Cleaner 终极指南:一键清理你的论文代码 【免费下载链接】arxiv-latex-cleaner arXiv LaTeX Cleaner: Easily clean the LaTeX code of your paper to submit to arXiv 项目地址: https://gitcode.com/gh_mirrors/ar/arxiv-latex-cleaner 还在为…

作者头像 李华
网站建设 2026/4/16 15:30:12

18、使用Python创建井字棋游戏与Twilio两步认证系统

使用Python创建井字棋游戏与Twilio两步认证系统 井字棋游戏开发 在开发井字棋游戏时,首先要创建一个能接受用户输入的网格,交替添加 “O” 或 “X”。我们为 TicTacToeGrid 组件制定规则,规定每个实例化的 TicTacToeGrid 的 cols 属性应设为 3。 以下是创建网格按钮…

作者头像 李华
网站建设 2026/4/16 17:12:19

终极Android架构实践指南:从零构建模块化应用

终极Android架构实践指南:从零构建模块化应用 【免费下载链接】android-showcase igorwojda/android-showcase: 是一个用于展示 Android 开发技巧和最佳实践的项目集合,包括了多种 Android 开发工具和技巧,可以用于学习 Android 开发知识。 …

作者头像 李华
网站建设 2026/4/16 17:06:23

PACKAGER.EXE:解决Word文档内嵌对象难题的利器

PACKAGER.EXE:解决Word文档内嵌对象难题的利器 【免费下载链接】packager.exe资源下载介绍 PACKAGER.EXE是一款专为微软Windows操作系统设计的实用工具,特别适用于解决Windows XP系统中Word文档内嵌对象无法打开的问题。通过该工具,用户可以轻…

作者头像 李华