Programming |
The loadobj Method
MATLAB looks for the portfolio loadobj
method whenever the load
command detects portfolio objects in the .mat
file being loaded. If loadobj
exists, MATLAB passes the portfolio object to loadobj
, which must then return the modified object as an output argument. The output argument is then loaded into the workspace.
If the input object does not match the current definition as specified by the constructor function, then MATLAB converts it to a structure containing the same fields and the object's structure with all the values intact (that is, you now have a structure, not an object).
The following implementation of loadobj
first uses isa
to determine whether the input argument is a portfolio object or a structure. If the input is an object, it is simply returned since no modifications are necessary. If the input argument has been converted to a structure by MATLAB, then the new accountNumber
field is added to the structure and is used to create an updated portfolio object.
function b = loadobj(a) % loadobj for portfolio class if isa(a,'portfolio') b = a; else % a is an old version a.accountNumber = getAccountNumber(a); b = class(a,'portfolio'); end
The saveobj Method | Changing the Portfolio Constructor |
© 1994-2005 The MathWorks, Inc.