在类的定义中指定特性,使得可以为了特殊目的定制方法的行为。在methods关键字同一行指定方法的特性:
code.matlab
methods(Attribute1=value1, Attribute2=value2,...)
...
end
方法的特性如表4-1所示。
表4-1 方法的特性
| 特性名称 | 类 | 描 述 |
|---|---|---|
| Abstract | logical 默认值= false | 如果为true,方法没有实现。 该方法没有function或end关键字,只有函数语法(如,[a,b]=myMethod(x,y))。 |
| Access | 枚举 默认值= false meta.class对象 meta.class对象构成的单元数组 | 确定什么代码可以调用该方法: public:访问无限制 protected:从类或子类访问 private:只能被类方法访问 |
| Hidden | logical 默认值= false | 为false时,方法名称显示在methods或methodsview命令显示的方法列表中;如果设置为true,方法名不包括在这些列表中,并且ismethod不返回true。 |
| Sealed | logical 默认值= false | 如果为true,方法不能在子类中重新定义,否则会出错。 |
| Static | logical 默认值= false | 不需要类对象,调用时用类名加点标记加方法名,MATLAB会自动确定是哪个类定义了该方法。 |