类——属性

matlab类——属性


属性定义语法

properties(Attributes)
    propertyname = default value;
end

properties内可以有多个属性并列。
Matlab中可用的Attributes很多,具体可以查看帮助文档,常用的有
- SetAccess,枚举类型,值可以是public(默认),protected,private。public指无限制的获取权限,protected指该类及其继承类有获取权限,private指只有该类具有获取权限。
- Constant,逻辑类型,值可以是true和false(默认),顾名思义,如果设为true,那么属性值为常量。
- Dependent,逻辑类型,默认值为false,如果为false,属性值保存在实例里;如果为true,那么属性值不保存在实例里。set和get函数不能通过实例的属性名获取属性值。
- SetObservable,可以是true和false(默认),如果设为true,并且类为句柄类,那么可以设置订阅者。当这个属性值修改时,会调用订阅者。

例子:圆面积类的属性

classdef CircleArea
    properties
        Radius
    end
    properties(Constant)
        P = pi;
    end
    properties(Dependent)
        Area
    end
    ...
end

注:properties本身也是一个函数,properties(‘classname’)会显示类拥有的且attribute为public的属性。

posted @ 2015-06-28 08:54  civftor  阅读(431)  评论(0编辑  收藏  举报