基于MATLAB数据结构和算法_线性表部分.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于MATLAB数据结构和算法_线性表部分

基于MATLAB 《数据结构与算法》;MATLAB 类的定义 Class创建举例 用class创建双向链表;类的建立:class;类的建立:class;1.1 类文件夹 当要创建一个类时,我们应该将确认类文件放在什么位置。 matlab为我们提供了两种方法: 1. 在matlab路径下创建一个文件夹,然后在文件夹中创建一个单独的自包含的类定义;和其他高级语言(java)类似,matlab还允许我们将这些类组织成包 包为packages 包文件夹的父文件夹必须在matlab路径下,但是包文件夹不必。 包文件夹以‘+’开头,可以包含多个类定义或者其他的包。 一个包文件夹定义了一个新的命名空间,所以我们可以重用类名。 引用包中的类或者函数时需要包含包名称, 例如packagefld1.ClassNameA(), packagefld2.packageFunction()。 ;其他更多 Class Folders;要殖豌销撵旷碴墨之艾揽宠咯看吨诀钉狄轻遏篓筏受耕岗世撰灰安修钾哮基于MATLAB数据结构和算法_线性表部分基于MATLAB数据结构和算法_线性表部分;1.2 类定义 ?????? 要创建一个类,matlab会自动帮我们生成一个类框架,一般如下: classdef?(attribute1 = value,...) classname( superclass_name) ???properties ??????PropName ?? end ???methods ??????methodName ?? end???????? ?? events ??????EventName ?? end end;Class的定义方法;完整的一个类模块如下图;关于classdef与handle;关于properties;关于Class中的methods;创建类的简单举例;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:建立一个类;举例:创建类;在类中引用方法:实现方法函数 类的方法(class methods)是指M文件编写的以类的对象作为输入产生的函数。一个特定的类的方法通常要保存在这个类的目录中。如上一小节中 @list 的方法函数存储在 @list路径下。 对方法汗的调用方式和对普通函数的调用方式是相同的,其命令格式为: [输出1,输出2,…] = 方法名称(对象名,参数1,参数2,…); 但是必须注意,方法函数中如果对类的成员变量进行了改变,就必须将改变后的类变量作为输出变量返回,否则在原工作空间中的类变量的成员变量不能得到更新。例如: d = list(10,20); set(d,x,23,y,34); ? d ? list class: x=10 y=20 ? 可以看到,调用set函数而不将返回结果重新赋值给d,着d的x和y两个成员变量仍然保持原来的数值。 ;在类中的引用方法:私有方法 私有方法是指只能被同类的其他方法所调用的方法,其对应的M文件存在类目录的private子目录下。例如,如果list类有私有方法,就应该将它们保存在@list/private目录下。私有方法的作用域子限于list这个类中,而不能够被MATLAB命令行调用,或者被上一层类的方法调用。;类的继承和集成 MATLAB中的类对象可以集成其他类对象的属性,当一个子类从父类中继承了属性后,在子类中将包括父类的所有成员和方法,父类的方法也可以使用之类继承的法拉国防。继承的概念是面向对象编程中的一个重要特性,子类可以很方便的引用父类中已经定义的方法。类的继承由两种方式:简单继承和多重继承。类集成的概率有点类似于嵌套,是指类对象的域中包括另外一个对象的情形。 1. 简单继承 简单继承是指子类从一个父类继承属性,子类中也包括它自己的一些新的属性。对于父类的操作可以应用到子类上来,而对于子类中不属于父类的方法??不可以应用到父类上去。 通常可以使用class函数来实现类的继承。 子类对象名 = class(子类对象名,‘子类类名’,父类对象名); 2. 多重继承 多重继承是指子类从多于一个父类中继承属性。子类中包含所有从父类中继承来的属性,还包括它自己的属性。 3. 类的集成 类的集成是指一个类可以把另外的类作为自己的一个成员变量。被嵌入的类对象的方法函数值能通过外层对象的方法函数调用。;定义类的好处;创建类:关于Access与Private;狂蕉婶悉勾畸氮焦篷恩韵扼侧卜镀煽肮碍眩政造哈斌币摈百御减送耳延羽基于MATLAB数据结构和算法_线性表部分基于MATLAB数据结构和算法_线性表部分

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档