主要内容

静态数据

什么是静态数据

静态数据是指类的所有对象共享的数据创建后,您可以修改。

使用静态数据来定义计数器所使用的类实例或其他数据类的所有对象共享。与实例数据、静态数据不改变从一个对象到另一个地方。MATLAB®提供了几个方法来定义静态数据,具体取决于您的需求。

静态变量

类可以使用持久变量来存储静态数据。定义一个静态方法或本地函数中,您创建一个持久变量。方法或函数可以访问这个变量。使用这种技术,当你想要存储一个或两个变量。

保存一个对象的类定义持久性变量不拯救与类相关联的静态数据。将静态数据保存在一个对象,或定义更广泛的数据,使用静态数据对象技术静态数据对象

实现

StoreData声明一个类定义了一个静态方法持续变量Var。的setgetVar方法提供了设置和获取访问持久性变量中的数据。因为setgetVar方法具有公共访问,您可以设置和获取全球持久变量中存储的数据。控制访问通过设置方法的范围访问属性。

classdefStoreData方法(静态)函数= setgetVar(数据)持续的Var;如果输入参数个数Var =数据;结束= Var;结束结束结束

设置变量的值通过调用setgetVar输入参数。持久的方法分配输入值变量:

StoreData.setgetVar (10);

被调用的变量的值setgetVar没有输入参数:

一个= StoreData.setgetVar
一个=10

明确持久变量通过调用清晰的StoreData类:

清晰的StoreData一个= StoreData.setgetVar
一个= []

添加一个方法setgetVar任何类的静态属性的行为。

静态数据对象

更广泛的数据存储,定义一个处理与公共属性类。类的一个对象分配给一个常数使用静态数据的类的属性。这种技术是非常有用的,当你想:

  • 添加更多属性或修改数据的方法。

  • 保存数据的对象类和重新加载静态数据。

实现

SharedData类是一个处理类,这使您能够从多个处理变量引用同一个对象数据:

classdefSharedData <处理属性Data1 Data2结束结束

UseData类的存根类,使用中存储的数据SharedData类。的UseData类存储处理SharedData对象在一个恒定的财产。

classdefUseData属性Data = SharedData(常数)结束%类代码结束

数据属性包含的处理SharedData对象。MATLAB构建了SharedData对象的时候加载UseData类。创建的所有随后的实例UseData类指的是相同的SharedData对象。

初始化SharedData对象属性,加载UseData类通过引用常量属性。

h = UseData.Data
h = SharedData属性:Data1: [] Data2: []

使用的句柄SharedData对象将数据分配给属性值:

h。Data1 =“MyData1”;h。Data2 =“MyData2”;

的每个实例UseData类是指相同的处理对象:

a1 = UseData;a2 = UseData;

使用对象变量引用数据:

a1.Data.Data1
ans = MyData1

分配一个新值的属性SharedData对象:

a1.Data.Data1=兰德(3);

所有新的和现有的对象UseData类共享相同的SharedData对象。a2现在有兰德(3)被分配到的数据a1在前面的步骤:

a2.Data.Data1
ans = 0.8147 0.9134 0.2785 0.9058 0.6324 0.5469 0.1270 0.0975 0.9575

常数初始化属性,清除所有的实例UseData类,然后明确的类:

清晰的a1a2清晰的UseData

常量数据

存储常量值不变化,将数据分配给一个常数。类的所有实例共享相同的属性值。控制的范围不变的属性通过设置属性的访问访问属性。

唯一的方式改变一个常数的值属性改变类定义。最后使用常量属性,如公共静态字段在Java中®

另请参阅

|

相关的例子

更多关于