classdef

Class definition keywords

Syntax

classdef ClassName
   ...
end

Description

classdef ClassName begins the class definition and an end keyword terminates the classdef block. Only blank lines and comments can precede classdef. Enter a class definition in a file having the same name as the class, with a filename extension of .m.

Class definition files can be in folders on the MATLAB® path or in class folders whose parent folder is on the MATLAB path. Class folder names begin with the '@' character followed by the class name (for example, @MyClass). For more information on class folders, see Class Files and Folders .

For more information on classes, see Classdef Block and Class Definition.

properties begins a property definition block, an end keyword terminates the properties block. Class definitions can contain multiple property definition blocks, each specifying different attribute settings that apply to the properties in that particular block.

For more information on properties, see Property Syntax.

Note

Properties cannot have the same name as the class.

methods begins a methods definition block, an end keyword terminates the methods block. This block contains functions that implement class methods. Class definitions can contain multiple method blocks, each specifying different attribute settings that apply to the methods in that particular block. It is possible to define method functions in separate files.

For more information on methods, see Methods in Class Design.

events begins an events definition block, an end keyword terminates the events block. This block contains event names defined by the class. Class definitions can contain multiple event blocks, each specifying different attribute settings that apply to the events in that particular block.

For more information on events, see Events and Listeners Syntax.

enumeration begins an enumeration definition block, an end keyword terminates the enumeration block.

For more information on enumerations, see Enumerations.

properties, methods, events, and enumeration are also the names of MATLAB functions used to query the respective class members for a given object or class name.

Examples

Use these keywords to define classes.

classdef (Attributes) ClassName
   properties (Attributes) 
      PropertyName
   end 
   methods (Attributes) 
      function obj = methodName(obj,arg2,...)
         ...
      end
   end
   events (Attributes) 
      EventName
   end
   enumeration
      EnumName
   end
end

Introduced in R2008a

Was this topic helpful?