Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

类图查看器

创建图来调查类细节和层次结构

自 R2021a 起

说明

类图查看器使您能够创建显示类实现细节和层次结构的图。您可以使用此 App 来探查类结构体并与其他人共享类图。这些图可以包括有关以下各项的详细信息:

  • 类的内部结构,包括属性和方法及其访问属性

  • 类的层次结构,包括包,显示继承关系

您可以使用图形界面或由 matlab.diagram.ClassViewer 定义的命令行 API 来创建类图。

Class Diagram Viewer app

打开 类图查看器

  • MATLAB® 工具条:在 App 选项卡上的 MATLAB 下,点击 App 图标。

  • MATLAB 命令提示符:输入 matlab.diagram.ClassViewer

示例

全部展开

打开类图查看器。在类浏览器窗格中,展开导入类、文件夹或文件按钮 并选择导入包。输入 matlab.unittest 作为包名称,然后点击确定unittest 所在的文件夹将显示在类浏览器中。

Class Browser with unittest added

展开 unittest 文件夹并选择 InteractiveTestCase 类。点击工具栏中的添加按钮,以将一个代表该类的卡片添加到类图查看器画布中。使用相同的方法添加 TestCase 类。由于 TestCaseInteractiveTestCase 的超类,类图查看器会自动绘制一个从 InteractiveTestCaseTestCase 的箭头来显示这种关系。

TestCase and InteractiveTestCase classes on canvas

类卡顶部的斜纹蓝色边框表示这两个类均为句柄类。图例窗格说明画布上的图形效果和图标表示的意义。

Legend pane

您也可以将项目从类浏览器直接拖放到画布上。将 Test 类拖放到查看器中。卡顶部的 green plus button 表示 Test 有可查看的超类。

Test class card with green plus button

点击 green plus button 可将该超类添加到图中。从 Test 指向 TestSuite 的箭头表示 TestSuiteTest 的超类。

Test and TestSuite class icons

除了通过拖放在查看器中移动类之外,您还可以使用工具栏的缩放和平移部分中的选项来自定义视图,包括:

  • 放大和缩小

  • 使模型适应当前屏幕大小

  • 平移

视图部分,选中 mixin 复选框。此操作不会自动将 mixin 类添加到图中,但随后当您执行任何添加超类的操作时,查看器会将它们添加到显示中。

要添加 Test 的所有超类,请右键点击 Test 类卡,然后选择添加所有超类。现在,CustomDisplay mixin 显示为 Test 的超类,TestSuiteExtension 显示为 TestSuite 的超类。CustomDisplay 的名称为斜体,表示它是抽象类。

CustomDisplay mixin and TestSuiteExtension visible

添加超类和子类时有两种选择:

  • 添加超类:添加给定类直接从其继承的超类。

  • 添加所有超类:添加给定类直接或间接从其继承的所有超类。在上面的示例中,Test 间接从 TestSuiteExpansion 继承。

  • 添加子类:添加直接从给定类继承的已知子类。

  • 添加所有子类:添加所有直接或间接从给定类继承的已知子类。

注意

MATLAB 可能无法识别给定类的所有现有子类。在这种情况下,请使用类浏览器手动添加任何其他子类。

除了类之间的关系,您还可以探索类定义本身。通过点击卡中类名称旁边的箭头,展开 Test 类卡。类卡会展开以显示由类定义的属性和方法。从超类继承的属性和方法不会出现在子类卡中。

属性和方法名称旁边的图标标识属性和方法的访问权限级别。例如,锁图标显示 ExternalFixtures 是私有属性。

Test class card with properties visible

选择类卡上的属性或方法还会在检查器窗格中显示访问权限和其他信息。

要查看一个或多个类的源代码,请选择类卡,然后点击工具栏中的转至源。源代码文件在 MATLAB 编辑器中打开。

要保存或共享您的图,请使用以下两个选项之一:

  • 点击导出以将图保存为静态图像。

  • 选择保存 > 另存为以创建一个 MLDATX 文件,该文件可以在类图查看器实例中重新打开和进行编辑。

编程用途

全部展开

matlab.diagram.ClassViewer 打开一个未加载类的类图查看器实例。

matlab.diagram.ClassViewer(Name,Value) 将指定的类添加到类浏览器窗格和画布中。有效的名称-值参量包括:

  • Classes:类名称指定为字符串或对象名称

  • Folders:文件夹名称指定为字符串

  • Packages:包名称指定为字符串

有关其他名称-值参量,请参阅 matlab.diagram.ClassViewer。将参量指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。

提示

  • 类图查看器是 matlab.diagram.ClassViewer 类的实例。使用类构造函数一次打开多个查看器。

  • 如果 green plus button 出现在两个类之间的箭头上而不是在类卡本身上,则两个连接的类之间的层次结构中还有其他类。点击 green plus button 可添加层次结构中该部分的所有可查看的类。

  • 如果在使用类图查看器期间您更改了类代码,可以通过点击刷新来自动更新图。

版本历史记录

在 R2021a 中推出

全部展开