我在 MATLAB 中尝试了一个简单的继承示例。
我有 2 个文件 Man.m 和 Worker.m 如下:
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
根据本指南,这是有效的。
我究竟做错了什么?