- When MATLAB copies a value object (any object that is not a handle), MATLAB does
not call the set or get method when copying property values from one object to
another. - Any assignment made to a property value that is the same as the current value when
the property’s AbortSet attribute is true. See “Assignment When Property Value Is
Unchanged” on page 11-44 for more information on this attribute.
Setting Property Value in ConstructorSetting a property value in the constructor causes the property set method to be called.
For example, the PropertySetMethod class defines a property set method for the Prop1
property.classdef PropertySetMethodproperties
Prop1 = "Default String"
endmethods
function obj = PropertySetMethod( str )
if nargin > 0
obj.Prop1 = str;
end
endfunction obj = set.Prop1(obj,str)
obj.Prop1 = str;
fprintf( 'set.Prop1 method called. Prop1 = %s\n', obj.Prop1 );
end
end
endIf you call the class constructor with no input arguments, MATLAB does not call the
set.Prop1 method.>> o = PropertySetMethodo =PropertySetMethod with properties:Prop1: "Default String"8 Properties — Storing Class Data