Method Attributes - MATLAB & Simulink (original) (raw)
Purpose of Method Attributes
Specifying attributes in the class definition enables you to customize the behavior of methods for specific purposes. Control characteristics like access, visibility, and implementation by setting method attributes. Subclasses do not inherit superclass member attributes.
Specifying Method Attributes
Assign method attributes on the same line as the methods
keyword:
methods (Attribute1 = value1, Attribute2 = value2,...) ... end
Table of Method Attributes
Attributes enable you to modify the behavior of methods. All methods support the attributes listed in the following table.
Attribute values apply to all methods defined within the methods...end
code block that specifies the nondefault values.
Method Attributes
Attribute Name | Class | Description |
---|---|---|
Abstract | logical Default = false | If true, the method has no implementation. The method has a syntax line that can include arguments that subclasses use when implementing the method:Subclasses are not required to define the same number of input and output arguments. However, subclasses generally use the same signature when implementing their version of the method.The method does not containfunction orend keywords, only the function syntax (for example, [a,b] = myMethod(x,y)).The method can include comments after the signature line. |
Access | enumeration, default = publicmatlab.metadata.Class objectcell array ofmatlab.metadata.Class objects | Determines what code can call this method:public — Unrestricted accessprotected — Access from methods in class or subclassesprivate — Access by class methods only (not from subclasses)List classes that have access to this method. Specify classes as matlab.metadata.Class objects in the form:A singlematlab.metadata.Class objectA cell array ofmatlab.metadata.Class objects. An empty cell array, {}, is the same as private access.See Class Members Access |
Hidden | logical Default = false | When false, the method name shows in the list of methods displayed using the methods or methodsview commands. If set to true, the method name is not included in these listings and ismethod does not return true for this method name. |
Sealed | logical Default = false | If true, the method cannot be redefined in a subclass. Attempting to define a method with the same name in a subclass causes an error. |
Static | logical Default = false | Specify as true to define a method that does not depend on an object of the class and does not require an object argument. Use the class name to call the method: classname.methodname or an instance of the class: obj.methodnameStatic Methods provides more information. |
Framework attributes | Classes that use certain framework base classes have framework-specific attributes. See the documentation for the specific base class you are using for information on these attributes. |
See Also
metaclass | matlab.metadata.Method