MATLAB®将类定义代码组织成由关键字分隔的模块块。所有关键字都有一个关联结束
声明:
classdef结束……
-所有类组件的定义
属性结束……
-属性名称的声明,属性属性的说明,默认值的分配
方法结束……
—方法签名、方法属性和函数代码的声明
事件结束……
—事件名称和属性的声明
枚举结束……
-枚举类的枚举成员和枚举值的声明。
属性
,方法
,事件
,枚举
关键字是否只在一个classdef
块。
的classdef
的文件中包含类定义classdef
关键字,并以结束
关键字。
classdef(ClassAttributes)类名称<超类...结束
例如,这个classdef
定义一个名为MyClass
子类的处理
类,但不能用于派生子类:
classdef(密封)MyClass <句柄...结束
看到的,Classdef块获取更多语法信息。
的属性
块包含属性定义,包括可选的初始值。属性块以属性
关键字,并以结束
关键字。
classdef类名称属性(PropertyAttributes)…结束...结束
例如,这个类定义了一个名为Prop1
具有私有访问权限,其默认值等于日期
函数。
classdefMyClass属性(Access = private) pro1 = date结束...结束
看到属性定义为更多的信息。
的方法
块(每个唯一的属性规范集对应一个)包含类方法的函数定义。方法块以方法
关键字,并以结束
关键字。
classdef类名称方法(MethodAttributes)…结束...结束
例如:
classdefMyClass方法(访问=私人)函数obj = myMethod (obj)...结束结束结束
看到方法和函数为更多的信息。
的事件
块(每个唯一的属性规范集对应一个)包含该类声明的事件名称。事件块以事件
关键字,并以结束
关键字。
classdef类名称事件(EventAttributes)EventName结束...结束
例如,这个类定义了一个名为StateChange
与一个ListenAccess
设置为受保护的
:
classdefEventSource事件StateChanged . (ListenAccess = protected结束...结束
看到事件和监听器为更多的信息。
一个完整的类定义包含属性、方法和事件代码块的任何组合。
classdef(密封)MyClass <句柄属性pro1 = datenum(日期)结束属性Prop2结束方法函数obj = MyClass(x)Prop2 = x;结束结束方法(访问= {? MyOtherClass})函数d = myMethod(obj);Prop1 + x;结束结束事件StateChanged . (ListenAccess = protected结束结束
枚举类是定义一组固定名称的专门化类,这些名称表示单一类型的值。枚举类使用枚举
块,该块包含类定义的枚举成员。
枚举块以枚举
关键字,并以结束
关键字。
classdef类名称<超类枚举EnumerationMember结束...结束
例如,该类定义了两个表示逻辑的枚举成员假
和真正的
:
classdef布尔<逻辑枚举否(0)是(1)结束结束
看到的,定义枚举类为更多的信息。