LVOOP(二)、面向对象概念演示

  1. 《面向对象概念演示》的设计过程
  2. 功能

    该程序实现的基本功能:

  • 有猫和狗两种动物;
  • 可以对他们体检,对于猫,大于7岁为old,否则为young;对于狗大于2岁为old,否则为young
  • 会发出叫声,显示对应的图片;
  1. 继承关系

  2. 实现过程
  • 创建项目,并命名为"Animal-1.lvproj":

  • 右键单击"我的电脑",新建-类,新建一个类,并命名为"Animal-1.lvclass":

  • 双击"Animal-1.ctl",打开并编辑Animal-1类的私有数据:

  • 创建方法make sound.vi:创建类的方法时有2个选择,分别是"基于动态分配模板的VI"和"基于静态模板的VI"。基于动态分配模板的VI:在被继承时,可以改写同名VI,实现不同的行为,可以实现类的多态;基于静态模板的VI:只能被继承,不能被改写。

    所有的动物都会发声,但是每种动物发出的声音不一样,所以在父类中定义一个虚函数"make sound.vi",选择"基于动态分配模板的VI",子类可以改写该方法,实现多态,其程序框图如下图所示:

  • 创建方法,set property.vi:需要设置父类中的私有数据(age和类别),该方法不允许子类修改,所以采用"基于静态模板的VI",其程序框图如下图所示:

并将"age"和"类别"连到前面板的接线端口;

  • 创建方法,body test.vi:该方法的功能是获取私有数据的值,并根据年龄判断结果是old还是young,采用"基于静态模板的VI"。"猫"分子如下图所示:

"狗"分支如下图所示:

并将age、类别、结果连到接线端。

  • 在新建CatDog类前,先建立2个文件夹"Cat-1"和"Dog-1"用于保存这2个类中的数据和方法;
  • 新建猫类:新建一个类,命名为"Cat-1.lvclass";右键选择属性-继承-更改继承,选择"Animal-1"为其父类,"继承所选类":

该类中的数据全部继承于Animal-1类,没有私有数据;

新建Cat-1类的方法:make sound.vi,采用"基于静态模板的VI",用于模拟Cat发声:

新建Cat-1类的方法:set property-1.vi,采用"基于静态模板的VI",用于设置Cat-1类的属性。在程序框图中选择编程-簇、类和变体-调用父方法(只能这样调用父方法,否则不行。)程序框图如下:

修改后的前面板如下图所示:

  • 用同样的方法创建狗类。其程序框图如下:

其前面板如下:

  • 新建vi"Animal Test-1.vi"用于演示程序,前面板如下图所示:

程序框图如下图所示:

该程序采用生产者-消费者循环,生产者循环随机设置猫或者狗的属性,消费者循中的"body test.vi"调用父类中的方法;"make sound.vi"实现了多态,根据不同的对象,调用不同的方法。


源程序见这个链接:http://download.csdn.net/detail/lab_fans/9872285#

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: LabVIEW面向对象LVOOP)是LabVIEW编程语言的一个面向对象编程(OOP)结构,它允许开发人员使用OOP概念来构建可重复使用性和可维护性高的程序。LVOOP允许开发者创建自定义对象,并定义对象的属性和方法。它使得在LabVIEW中开发大型应用程序和模块化程序更加容易和高效。 ### 回答2: LabVIEW面向对象LVOOP)是一种面向对象编程方法,可以帮助开发人员更好地组织和管理他们的代码。LVOOP通过使用类和对象的概念,来支持代码重用和代码结构化。 在LVOOP中,开发人员可以使用类模板来定义一个类。类可以包含属性和方法,用于描述一组数据或操作。对象则是类的实例,每个对象都有自己的数据和属性,但是它们所执行的操作是相同的。 LVOOP中还有一些其他的概念,例如继承和多态。通过继承,一个类可以从父类继承属性和方法。多态则是指在不同情况下使用同一个方法的不同形式。 使用LVOOP可以提高代码的可读性和可维护性。它可以使代码更具有结构性,并且使开发人员更加专注于问题的本质而不是代码的实现。LVOOP也可以降低代码的复杂性,因为它可以帮助开发人员将代码分成更小的部分,从而更容易管理和维护。 然而,与其他编程方法相比,LVOOP的学习曲线相对较陡峭。在使用LVOOP时,开发人员需要更多的时间来编写代码和理解类的概念。另外,LVOOP的性能也可能受到影响,因为它需要更多的资源来处理类和对象。 总之,LVOOP是一种有用的编程方法,可以提高代码的可读性和可维护性。它可以帮助开发人员更好地组织和管理他们的代码,并使其更具结构性。然而,在使用LVOOP时需要认真权衡其优缺点,以确保其在特定应用中的适用性。 ### 回答3: LabVIEW面向对象LVOOP)是一种面向对象的基于命名数据结构(NDS)的编程方法。它在LabVIEW开发环境中提供了一种建立对象及相应内部方法和属性的方式。通过LVOOP,开发者可以更加灵活地管理、维护和扩展大型应用程序。 相较于传统的基于函数的编程方法,LVOOP不仅仅是将数据拆分为多个子程序,它将数据和方法封装在对象中。每个对象都有自己的状态、功能和数据,并且对象之间可以相互通信和交互。 LVOOP的一个主要优势是封装。对象可以被封装在LabVIEW项目中。这意味着对象定义、实现和使用都在一个文件夹中,方便了代码的复用。在多人协作中,可以将对象挂载到实际的硬件上,让多个开发者同时开发不同的模块,最终将不同模块集成在一起。 LVOOP还支持继承机制,基类可以被子类继承。通过这个机制,可以快速建立相似对象之间的关系。继承和多态能力使开发者能够根据不同需求定制对象,并复用已经存在的代码。 总之,LVOOP在创建大型、复杂应用程序时是一种非常强大的工具。它使得开发者在系统架构建设、代码维护和代码复用等方面有了更加高效的方式,同时还具有更好的可扩展性和可重用性。如果您在应用开发中需要处理复杂的数据结构和算法,LVOOP是一个值得关注的编程模式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值