面向对象的Matlab编程

模型真实世界对象并管理软件复杂性

使用面向对象编程为真实世界的对象建模

面向对象编程是一种设计方法,它使您能够以编程方式定义被调用的结构对象将数据(属性)与在该数据(方法)上运行的函数组合在一起。在matlab.®,您可以创建对象来模拟现实世界中的设备和系统的行为。然后,这些对象可以在用于模拟和分析复杂系统的应用程序中用作构建块。


在无线通信应用程序中的示例发送器类。

MATLAB对象提供了一个定义良好的接口,隐藏了内部的复杂性。

使用面向对象编程来管理软件的复杂性

在MATLAB中使用面向对象的编程,您可以通过将代码组织成更容易维护和扩展的逻辑组件来管理软件复杂性。您可以通过创建具有隐藏底层代码复杂度的可重复使用的对象来避免代码重复。此外,在不引入客户端代码中的不兼容性,您的对象可以随时间演变和变化。


MATLAB类的组成部分

MATLAB类包含用于构建特定类型对象的蓝图或指令集。类定义以关键字classdef开始,有三个主要组件:

  • 属性块定义了存储类中每个对象数据的属性
  • 方法块包含一组函数,这些函数定义了可以在类的每个对象上执行的操作
  • 事件块定义了当对象发生变化时,对象将发送给应用程序的其他部分的消息

样本MATLAB类定义。

MATLAB提供属性/方法属性和验证语法来强制执行属性类型、大小和值。

定义属性和方法

定义类时,您可以指定属性控制类属性和方法的行为方式,以及如何从对象外部访问它们。例如,属性和方法可以是公有、私有或受保护的。在指定属性时,可以使用验证语法避免编写用于错误检查的代码。


处理对象

可以使用名为的特殊方法创建对象类的构造函数。调用构造函数就像调用任何MATLAB函数一样,可以用来创建单个对象或对象数组。可以像访问结构的字段一样访问对象属性。调用对象方法就像调用普通的MATLAB函数一样。

Matlab对象具有相对于其他语言的独特功能。例如,您可以在该类的任何时间和对象都会修改类将立即更新。此外,MATLAB管理对象的生命周期,而无需任何显式内存分配或删除以及某些其他语言中使用的非确定性垃圾收集的类型。

使用熟悉的语法创建并使用MATLAB对象。