Methods That Modify Default Behavior - MATLAB & Simulink (original) (raw)

Main Content

How to Customize Class Behavior

There are functions that MATLABĀ® calls implicitly when you perform certain actions with objects. For example, a statement like [B(1);A(3)] involves indexed reference and vertical concatenation.

You can change how user-defined objects behave by defining methods that control specific behaviors. To change a behavior, implement the appropriate method with the name and signature of the MATLAB function.

Which Methods Control Which Behaviors

The following table lists the methods to implement for your class and describes the behaviors that they control.

Overload Functions and Override Methods

Overloading and overriding are terms that describe techniques for customizing class behavior. Here is how we use these terms in MATLAB.

Overloading

Overloading means that there is more than one function or method having the same name within the same scope. MATLAB dispatches to a particular function or method based on the dominant argument. For example, the timeseries class overloads the MATLABplot function. When you call plot with a timeseries object as an input argument, MATLAB calls the timeseries class method named plot.

To call the nonoverloaded function, use the builtin function.

Overriding

Overriding means redefining a method inherited from a superclass. MATLAB dispatches to the most specific version of the method. That is, if the dominant argument is an object of the subclass, then MATLAB calls the subclass method.

To control class dominance, use the InferiorClasses attribute.

See Also

Topics