【发布时间】:2015-08-31 12:42:59
【问题描述】:
我是 MATLAB OOP 的新手。我有一个抽象类,在我的 matlab 路径中定义了一个抽象方法。我在名为 @SubAbsClass 的子文件夹中有一个名为 SubAbsClass 的子类。在子类中实现抽象方法后,我无法创建子类的对象。这是我的 SubAbsClass 实现:
classdef SubAbsClass < AbsClass
properties
O1
end
methods
function obj=SubAbsClass(a,b)
obj.O1=absMethod(a,b);
end
end
methods (Static)
function out = absMethod(a,b)
out = a + b;
end
end
end
而我的抽象类实现是:
classdef AbsClass
methods(Abstract, Static)
result = absMethod
end
end
当我尝试在 MATLAB 路径中创建对象(抽象类在 MATLAB 路径中)时,我收到错误消息。我尝试了很多配置并搜索了 matlab oop 文档,以及包括 stackoverflow 在内的网络,但不幸的是找不到要实现的示例。感谢您的帮助
>> clear all; clear classes;
>> obj=SubAbsClass(5,2)
Undefined function 'absMethod' for input arguments of type 'double'.
Error in SubAbsClass (line 11)
obj.O1=absMethod(a,b);
【问题讨论】:
标签: matlab oop methods subclass abstract