MATLAB中的面向对象编程

为真实世界的对象建模并管理软件的复杂性

使用面向对象的编程来模拟现实世界对象

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


无线通信应用程序中的发射器类。

MATLAB对象提供了一个明确的接口,隐藏内部复杂性。

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

在MATLAB中使用面向对象编程,您可以通过将代码组织成易于维护和扩展的逻辑组件来管理软件的复杂性。您可以通过创建具有定义良好的接口(隐藏底层代码的复杂性)的可重用对象来避免代码重复。此外,对象可以随着时间的推移而演进和更改,而不会在客户端代码中引入不兼容性。


Matlab类的组成部分

Matlab类包含用于构建特定类型对象的蓝图或一组指令。类定义以ClassDef关键字开头,并有三个主要组件:

  • 特性块定义为类的每个对象存储数据的属性
  • 方法块包含一组函数,可定义可以在类的每个对象上执行的操作
  • 活动块定义消息的消息,当该对象中的某些内容更改时,对象将发送到应用程序的其他部分

一个MATLAB类定义的示例。

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

定义属性和方法

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


使用对象

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

MATLAB对象相对于其他语言具有独特的特点。例如,您可以在任何时候修改一个类,并且该类的对象将立即更新。此外,MATLAB管理对象的生命周期,不需要任何显式的内存分配或回收,也不需要在其他一些语言中使用的非确定性垃圾收集类型。

使用熟悉的语法创建和使用Matlab对象。