设计模式:02观察者模式--labview实现

news2024/11/28 7:46:08

引言

在观察者模式中,一种叫做被观察者的对象维护了观察者对象的集合,当被观察者对象发生改变时候,它会通知观察者。
在被观察者对象所维护的观察者集合中,能够添加或者删除观察者。被观察者状态变化能够传递给观察者。这样观察者能够根据被观察者的状态变化做出相应的改变。
观察者模式定义了对象之间的链接,当一个对象化的状态发生变化时候,所有依赖的对象会自动更新。

观察者UML图

观察者UML图

LabVIEW类结构图

如图,最顶层是AF类,因为是新建的是操作者。主要从第二层来分析。
第二层左边是Observer.lvclass、右边是Listener.lvclass。
第三层从左往右,分别是ConcreteObserver1.lvclass、ConcreteObserver2.lvclass、ConcreteListener.lvclass。
labview类结构图

相关类

Observer.lvclass

在这里插入图片描述

ConcreteObserver1.lvclass

在这里插入图片描述
相关vi
在这里插入图片描述

ConcreteObserver2.lvclass

在这里插入图片描述
相关vi
在这里插入图片描述

Listener.lvclass

在这里插入图片描述

ConcreteListener.lvclass

在这里插入图片描述
相关vi
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Example.vi

在这里插入图片描述

运行结果

运行结果,依次如图所示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/49572.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

路西德Lucid EDI项目测试流程

Lucid Motors路西德汽车拥有电动汽车制造、储能技术和代工生产等业务,目前已成功研制出其第一辆汽车Lucid Air,并开始对外销售。随着企业的不断发展,对自动化的要求也越来越高,作为制造型企业,Lucid早已实现机械自动化…

多个JDK版本可以吗:JDK17、JDK19、JDK1.8轻松切换(无坑版)小白也可以看懂

多个版本JDK切换 多个JDK:JDK17、JDK19、JDK1.8轻松切换(无坑版)小白也可以看懂 提示:看了网上很多教程,5w观看、32w观看、几千观看的,多多少少带点坑,这里我就把踩过的坑都给抹了 文章目录多个…

架构演进技巧

架构演进剖析 架构演进定义 定义:通过设计新的系统架构(4R)来应对业务和技术的发展变化 目的:1、应对业务发展带来新的复杂度;2、应用技术发展带来的复杂度新的解决方法 关键:1、新架构;2、…

UDS知识整理(五):安全访问——0x27服务

目录 一、0x27服务(安全访问)简介 二、0x27服务信息格式 (1)请求格式 (2)正响应格式 (3)负响应格式 三、0x27服务服务举例 (1)请求种子与发送KEY 一、…

实变函数与泛函分析基础

集合的运算 并集:1、任意两个集合 2、任意多个集合的并集或和集: 设 一族集合 ;由一切 的 元素组成的集合,其中 是固定指标集, 是 中变化的指标。 记为 ,可表示为 是 有限集, 记 …

CoreData 同步 iCloud 数据导致 App 启动超时被系统 watchdog 终止的原因及解决

问题现象 CoreData + iCloud 支持的 App 在启动时偶尔会出现被系统强制退出的情况,用 Xcode 也无法中断调试这种崩溃,查看真机上的崩溃日志如下: 如上图所示,我可以了解到 App 崩溃的原因是由于启动超时被系统看门狗(watchdog)强行关闭了: process-launch watchdog tra…

宇视雷达雷视交付|问题定位(素材收集篇)

雷达&雷视交付|问题定位(素材收集篇) 雷视一体机作为行业明星产品,具备交通信息采集、交通事件检测等功能,在交通领域的应用前景十分广阔。为了快速响应现场交付时问题定位的诉求,提升一线的素材收集规范性和效率…

回收站清空了怎么恢复?数据恢复,有这些就足够了

大家都知道,数据在回收站中会有一定的时间,但是被清空之后,数据就很难恢复了。回收站清空了怎么恢复?首先需要知道,被清空的文件可以分为两类。一类是重要资料,另一类是一些无关紧要的资料。找到我们要恢复…

Kotlin高仿微信-第14篇-单聊-视频通话

Kotlin高仿微信-项目实践58篇详细讲解了各个功能点,包括:注册、登录、主页、单聊(文本、表情、语音、图片、小视频、视频通话、语音通话、红包、转账)、群聊、个人信息、朋友圈、支付服务、扫一扫、搜索好友、添加好友、开通VIP等众多功能。 Kotlin高仿…

SpringMVC(八):SSM整合

文章目录 SSM整合 一、准备数据库表格 二、创建maven web项目并补充项目结构,准备好MVC模式下的主要目录 三、更新web.xml 文件和准备包结构 四、导入依赖 五、log4j2.xml 六、jdbc.properties 七、springMVC.xml配置文件 八、applicationContext.xml 九、…

Anaconda默认安装在C:\Users\xxx\.conda\envs中

目录 问题: 解决: 更改默认安装位置 移动已安装环境 问题: 解决: 更改默认安装位置 用记事本打开 C:\Users\zqk\.condarc 在最后插入 envs_dirs: - D://anzhuang//Anaconda3//envs 如若需更改pkgs,插入如下代…

如何使用OpenCV作图像或矩阵的逻辑运算

所谓逻辑运算,主要是指逻辑与运算、逻辑或运算、逻辑非运算、逻辑异或运算。 可用函数bitwise_and()实现图像或矩阵的逻辑与运算; 可用函数bitwise_or()实现图像或矩阵的逻辑或运算; 可用函数bitwise_not()实现图像或矩阵的逻辑非运算&#x…

oh-my-zsh 为 ls 命令自定义颜色

ls 命令默认显示的颜色是: 白色: 表示普通文件 蓝色: 表示目录 绿色: 表示可执行文件 红色: 表示压缩文件 蓝绿色: 链接文件 红色闪烁:表示链接的文件有问题 黄色: 表示设备文件 灰…

Java实现3DES加密解密(DESede/ECB/PKCS5Padding使用)

一、简介 3DES(又叫Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)块密码的通称。 它相当于是对每个数据块应用三次DES加密算法。密钥长度是128位,192位(bit),如果密…

如何最简洁的使用iOS 开发证书 和 Profile 文件

如果你想在 iOS 设备(iPhone/iPad/iTouch)上调试, 需要有 iOS 开发证书和 Profile 文件。 在你拿到这两个文件之后,该如何使用呢? 证书使用说明: 1. iOS 开发证书:开发证书 (Devel…

ROS——构建一个模拟的两轮ROS机器人

构建一个模拟的两轮ROS机器人1. 确保已经安装了Rviz2. 生成并构建ROS功能包2.1 生成一个catkin工作空间2.2 漏了一个懒得改2.3 构建差分驱动的机器人的URDF2.3.1 创建机器人底座2.3.2 使用roslaunch2.3.3 添加轮子2.3.4 添加颜色2.3.5 添加小脚轮2.3.6 添加碰撞属性2.3.7 移动轮…

CHS寻址

盘片(platter) 、磁头(head)、 磁道(track)、 扇区(sector)、 柱面(cylinder)。 CHS:通过柱面(cylinder)、磁头&#xff0…

成都易佰特的坑——E103-W06

写这篇博客,是为了记录,为了防止技术同行踩坑。 因为什么原因,就不说了。反正就是买了这个E103-W06模块来进行测试wifi透传的性能. 结果,好家伙,买回来就不能用。TMD虚拟串口都识别不了。还他妈卖的挺贵。95元~99元一…

【附源码】计算机毕业设计JAVA装修网站

【附源码】计算机毕业设计JAVA装修网站 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: JAVA mybatis M…

2分能出线,6分却不能出线?世界杯小组赛的出线规则这次真被我整明白了

写在前面 这个月世界杯正是进行得火热,我这样的十几年的老球迷自然是场场不落,周边不少不看球的朋友甚至连我那一场比赛上多少人都弄不明白的老婆也能说上几句:“听说梅西输了?”,“听说德国队要回家了”,“…