静态数据是指类的所有对象共享的数据创建后,您可以修改。
使用静态数据来定义计数器所使用的类实例或其他数据类的所有对象共享。与实例数据、静态数据不改变从一个对象到另一个地方。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中®。