前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matlab复杂数据类型(三)

matlab复杂数据类型(三)

作者头像
巴山学长
发布2019-07-15 14:41:49
5410
发布2019-07-15 14:41:49
举报
文章被收录于专栏:巴山学长巴山学长

感谢大家关注matlab爱好者公众号,今天给大家介绍matlab面向对象编程所用的数据类型——类。在聊天栏中输入"015"、"类"或"对象"即可快速获取本文章。

matlab除了面向过程编程之外,还可以面向对象编程。面向对象编程最显著的特征就是封装性,继承性,多态性,这些通过一种特殊的数据类型来表征,即是——类。

类是一种数据类型,与普通的数据类型不同的是类不仅包含数据,还包括对数据的操作,类把数据和数据操作方法封装在一起,作为一个整体参与程序的运行。类具有可继承性,创建一个新的类的时候,可以在一个基类中添加成员派生出新类。类的变量和类的实例是不同的,类的实例是动态分配的内存区域,通常称类的实例为“对象”。同一个类可有不同的实例存在,每个实例各自可有自己的数据,但是数据操作方法是相同的。类的变量可以看作是一个指针,指向类的实例。

在matlab中,通常一个类包含如下四个基本的成员函数:

构造函数―与类名相同,可在其中完成成员初始化;

显示函数―名为display,用于显示成员的数据;

赋值函数―名为set,用于设置类成员的数值;

取值函数―名为get,用于读取类成员的函数。

与C++的类不同的是,matlab的类不需要专门的析构函数。如果类用到了一些特殊的内容需要释放的话,可以编写一个成员函数,比如classclear,用包来释放所占用的资源。

类的创建:通过classdef命令来创建或继承类

使用格式:

classdef WidgetHandle < handle
    properties
    ...
    end
    methods
    ...
    end
end

上面的小于符号(<)表示继承,handle是所继承的类。

特别说明:类的static function可以在不定义类的实例的情况下直接调用类的成员函数,比如定义:

classdef tools < handle 
    methods (Static = true) 
        function a = test(b, c) 
            a = b + c; 
        end 
    end 
end

直接通过tools.test(b, c)调用函数。

具体示例

温馨提示

如果你喜欢本文,请分享到朋友圈,想要获得更多信息,请关注我。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 巴山学长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档