MATLAB での継承の簡単な例を試していました。
次のように、Man.m と Worker.m の 2 つのファイルがあります。
classdef Man
properties
salary;
age;
end
methods
function obj=Man(s,a)
obj.salary=s;
obj.age=a;
end
function monthly_salary=FactorBy12(obj)
monthly_salary=obj.salary/12;
end
end
end
と
classdef Worker < Man
properties
years_at_organization;
end
methods
function obj=Worker(y,s,a)
obj.years_at_organization=y;
obj.salary=s;
obj.age=a;
end
function bonus=BonusToBeGiven(obj)
bonus=obj.years_at_organization;
end
end
end
すべてを継承しようとしてMan
いWorker
ますが、エラーが発生し続けます。Man(5,6) は機能しますが、Worker(5,6,7) は機能しません。( Input argument "s" is undefined.
)
次のような単純なことをする場合も同様です
classdef Woman < Man
end
このガイドによると、これは有効です。
私は何を間違っていますか?