https://blog.csdn.net/qinze5857/article/details/80545885
开篇:搜了一下网上介绍matlab的class类,信息不全,且总结不全面,于是单独help classdef以下做个详细总结
首先从类的定义说起,面对对象的编程思维通常包括,属性(类成员变量),方法(类成员函数)
基本语法为:
classdefclassname类名
properties类属性PropName
end
methods类方法 methodName
end
events类事件EventName
end
enumeration类列举EnumName
end
end
类名
属性:
设置属性值:
使用属性set方法来验证分配给属性的值。 属性set方法可以执行诸如对输入值进行错误检查之类的操作,然后再采取任何必要的操作来存储新的属性值。
值类设置函数必须将修改后的对象返回给调用函数。 处理类不需要返回修改后的对象。
语法:
示例:
methods
function obj = set.Material(obj,material)
if ~(strcmpi(material,'aluminum') ||...
strcmpi(material,'stainless steel') ||...
strcmpi(material,'carbon steel'))
error('Material must be aluminum, stainless steel, or carbon steel')
end
obj.Material = material;
end % Material set function
function modulus = get.Modulus(obj)
ind = find(obj.Strain > 0); % Find nonzero strain
modulus = mean(obj.Stress(ind)./obj.Strain(ind));
end % Modulus get function
function obj = set.Modulus(obj,~)
fprintf('%s%d
','Modulus is: ',obj.Modulus)
error('You cannot set Modulus explicitly');
end
end
方法method:
使用语法:
参数设定:
文件夹:
类文件保存:注意@名词空间(与类名相同,例子中都为classNameA)
注意@名词空间(与类名相同,例子中都为classNameA)
添加部分:
当我使用时,我发现如何调用这里面的class以及其他.m函数呢
1、函数调用
2、类调用
参考:类文件夹,分开定义一个类;http://www.cnblogs.com/jmpep/archive/2012/06/29/4486346.html
参考:类的继承以及类的使用;https://blog.csdn.net/beechina/article/details/50933860
参考:百度文库定义一个类;https://wenku.baidu.com/view/5b19e78f50e2524de5187e59.html
---------------------
作者:sleep199
来源:CSDN
原文:https://blog.csdn.net/qinze5857/article/details/80545885
版权声明:本文为博主原创文章,转载请附上博文链接!