《MATLAB面向对象程序设计》

《MATLAB面向对象程序设计》

基本信息

作者: 苗志宏    马金强

出版社:电子工业出版社

ISBN:9787121233449

上架时间:2014-6-18

出版日期:2014 年6月

开本:16开

页码:250

版次:1-1

所属分类:计算机 > 计算机辅助设计与工程计算 > Matlab

更多关于》》》 《MATLAB面向对象程序设计》

编辑推荐 

《MATLAB面向对象程序设计》是国内第一本系统介绍MATLAB面向对象程序设计的书籍,重点突出、通俗易懂、案例充实、图文并茂、由浅入深、循序渐进、系统透彻。

   MATLAB具有强大的数据可视化功能以及包含诸多面向不同领域的工具箱,并且它是一个开放式、可扩展的程序设计环境,因此,可以充分利用MATLAB所提供的这些工具箱和各种功能,以面向对象的程序设计方法来更加方便、快捷地设计应用程序,以便解决不同领域中的实际问题。

  《MATLAB面向对象程序设计》的出版,必将大大方便大家对MATLAB面向对象程序设计的学习,加强MATLAB在该领域中的推广,提升大家的工程应用能力。

内容简介

书籍

计算机书籍

《matlab面向对象程序设计》以面向对象程序设计方法的基本特征(抽象、封装、继承、多态)为主线,由浅入深、循序渐进地展开,系统介绍了matlab面向对象程序设计的思想、设计方法等。《matlab面向对象程序设计》重点突出、通俗易懂,各章节提供大量的程序代码供读者参考练习,多数章节安排了相应的应用实例。全书分为11章,主要分为三部分:一是matlab基本操作和程序设计基础、面向对象程序设计思想,以及matlab面向对象程序设计特点等(第1~2章);二是详细介绍了matlab中面向对象程序的开发过程和设计方法(第3~10章);三是matlab面向对象程序设计方法的综合应用实例(第11章)。

《matlab面向对象程序设计》内容详实、科学合理,图文并茂、实例丰富,讲解系统透彻,通过本书的学习读者可以很快理解matlab面向对象程序设计的基本思想,掌握其设计方法,提高利用matlab解决问题的能力和效率。《matlab面向对象程序设计》可以作为高等院校理工科专业大学生、研究生的计算机教材和广大科研人员的参考资料。

作译者

苗志宏,2001年毕业于北京师范大学数学系,获理学博士学位。现为中国人民武装警察部队学院消防工程系教授,主要从事数学和信息工程教学。参与多项国家自然科学基金项目的研究,发表论文30余篇,多篇被SCI、EI收录,主编著作《虚拟现实技术基础与应用》。

马金强,硕士,现为中国人民武装警察部队学院消防工程系讲师。从事电子信息工程教育教学12年。发表学术论文10余篇,多篇被EI收录,主编教材1部,参与出版译著1部,出版了著作《多媒体制作与Authorware》,参与编写了著作《虚拟现实技术基础与应用》。

目录

《matlab面向对象程序设计》

第1章 matlab入门 1

1.1 matlab概述 1

1.1.1 matlab的发展史 1

1.1.2 matlab体系结构 2

1.1.3 matlab功能特点 2

1.2 matlab的安装与运行 4

1.2.1 matlab的安装与激活 4

1.2.2 matlab的启动与退出 7

1.3 matlab开发环境 7

1.3.1 菜单栏 8

1.3.2 工具栏 12

1.3.3 matlab的窗口 12

1.4 matlab帮助和演示系统 17

1.4.1 命令窗口帮助系统 17

1.4.2 联机帮助 18

1.4.3 联机演示系统 19

1.5 矩阵及其运算 20

1.5.1 创建矩阵 20

1.5.2 矩阵访问 23

1.5.3 矩阵的赋值 24

1.5.4 矩阵的四则运算 25

1.5.5 点运算 26

1.5.6 矩阵的其他运算 27

1.5.7 矩阵操作 30

1.6 matlab图形用户界面设计 32

1.6.1 图形对象和句柄 32

1.6.2 图形窗口及坐标轴 34

1.6.3 用户界面对象 37

1.6.4 图形用户界面设计开发环境 41

1.7 小结 46

思考与练习 46

第2章 matlab面向对象程序设计概述 47

2.1 matlab程序设计基础 47

2.1.1 matlab的变量及数据类型 47

2.1.2 运算符与操作符 50

2.1.3 m文件介绍 51

2.1.4 函数的类型 54

2.1.5 matlab的程序设计原则 55

2.2 面向对象程序设计方法简介 56

2.2.1 程序设计方法的发展概述 56

2.2.2 面向对象程序设计方法 56

2.2.3 面向对象程序设计方法的优越性 57

2.2.4 面向对象程序设计的基本概念 57

2.2.5 面向对象程序设计方法中的基本特征 58

2.3 matlab面向对象程序设计简介 59

2.3.1 matlab中的类和对象 59

2.3.2 matlab中类的设计、定义 61

2.4 matlab面向对象程序设计特点 63

2.4.1 matlab面向对象程序设计的特点 63

2.4.2 matlab面向对象程序设计与其他语言 63

2.5 小结 64

思考与练习 64

第3章 matlab中的类和对象 65

3.1 类的声明 65

3.1.1 类的声明 65

3.1.2 对象的创建和使用 66

3.1.3 类的特性 67

3.1.4 类定义的组织形式 67

3.1.5 命名空间和包 68

3.2 类的属性成员及访问控制 71

3.2.1 属性成员的声明和初始化 71

3.2.2 属性成员的特性 71

3.2.3 属性成员的set和get方法 74

3.2.4 属性成员的访问控制 77

3.3 类的方法及访问控制 78

3.3.1 普通方法及访问控制 79

3.3.2 构造函数 81

3.3.3 静态方法 83

3.3.4 类型转换方法 85

3.4 类的组合 87

3.4.1 内嵌对象 88

3.4.2 类的优先级问题 88

3.4.3 对象的保存与加载 91

3.5 小结 92

思考与习题 93

第4章 matlab中的继承与派生 94

4.1 类的继承与派生 94

4.1.1 继承与派生的概念 94

4.1.2 派生类的定义 95

4.1.3 派生类生成过程 96

4.1.4 用派生类创建一个类的别名 99

4.2 派生类的构造函数 99

4.2.1 构造函数的建立 99

4.2.2 派生类构造函数执行的顺序 102

4.3 多重继承中的成员标识问题 104

4.3.1 属性成员名称冲突 105

4.3.2 方法名称冲突 105

4.3.3 事件名称冲突 107

4.4 指定容许派生的类 108

4.5 类成员的访问控制 109

4.5.1 属性成员的访问控制 109

4.5.2 方法的访问控制 110

4.5.3 事件的访问控制 114

4.6 定义matlab内置类型的派生类 115

4.6.1 matlab的内置类 115

4.6.2 定义matlab内置类的派生类 115

4.7 小结 120

思考与练习 120

第5章 handle型类 122

5.1 handle型类的声明 122

5.2 类handle的介绍 124

5.3 属性成员set/get接口的实现 125

5.4 动态属性成员的实现 127

5.5 handle型类的析构函数 130

5.6 handle-兼容类 135

5.7 深拷贝与浅拷贝 136

5.7.1 深拷贝与浅拷贝的概念 136

5.7.2 matlab.mixin.copyable类简介 138

5.7.3 深拷贝的实现 139

5.8 应用实例 142

5.8.1 问题的提出 142

5.8.2 类的设计 142

5.8.3 源程序及运行效果 143

5.9 小结 146

思考与练习 146

第6章 对象阵列 147

6.1 matlab中常用的阵列形式 147

6.1.1 阵列的概念 147

6.1.2 几种常用的阵列 147

6.2 创建对象阵列 153

6.2.1 如何创建对象阵列 154

6.2.2 在对象阵列上添加动态属性成员 157

6.3 不同类型对象组成的对象阵列 158

6.3.1 不同类型对象的连接 158

6.3.2 转换方法的实现 159

6.4 多相对象阵列 160

6.4.1 matlab.mixin.heterogeneous类及多相阵列创建 161

6.4.2 多相阵列的下标索引和连接 162

6.4.3 convertobject方法 163

6.5 小结 164

思考与练习 164

第7章 多态性 165

7.1 函数重载 165

7.2 运算符重载 169

7.2.1 运算符重载的实现 170

7.2.2 运算符重载中的优先级问题 172

7.2.3 subsref和subsasgn的重载 173

7.3 抽象类 179

7.3.1 抽象类的定义 179

7.3.2 有关抽象类的特殊规定 180

7.3.3 一个例子 180

7.4 小结 183

思考练习 183

第8章 事件与听众 185

8.1 事件与听众的概念 185

8.1.1 事件的概念及事件模型 185

8.1.2 听众的概念 186

8.2 定义事件和听众 186

8.2.1 如何命名一个事件 186

8.2.2 事件触发和广播 188

8.2.3 如何响应事件(听众的定义) 189

8.2.4 听众的几种创建方式 190

8.2.5 回调函数定义和调用 191

8.2.6 一个例子 192

8.3 属性成员事件的收听 197

8.3.1 属性成员事件 197

8.3.2 为属性成员事件创建听众 198

8.3.3 为听众定义回调函数 199

8.3.4 属性成员的abortset属性 199

8.4 动态属性成员事件响应 201

8.5 应用实例 204

8.5.1 问题的提出 204

8.5.2 类的设计 204

8.5.3 源程序及运行效果 205

8.6 小结 209

思考与练习 209

第9章 枚举 210

9.1 枚举概述 210

9.1.1 相关术语 210

9.1.2 枚举类型的分类 210

9.2 枚举类的定义和使用 211

9.2.1 枚举类的定义 211

9.2.2 枚举类中的方法 212

9.2.3 在枚举类中定义属性成员 212

9.2.4 枚举类的使用 213

9.2.5 枚举类与阵列 216

9.2.6 枚举类的构造函数调用顺序 216

9.2.7 枚举类在应用中的一些限制 217

9.3 小结 218

思考与练习 218

第10章 利用类元数据获取类信息 219

10.1 类元数据简介 219

10.1.1 相关概念 219

10.1.2 元类对象的创建和使用方法 219

10.2 元数据的使用 220

10.2.1 使用元数据查阅类和对象 220

10.2.2 查找具有指定设置的对象 223

10.2.3 获得关于属性成员的信息 225

10.2.4 获得属性成员的默认值 228

10.3 小结 230

思考与练习 230

第11章 综合应用实例 231

11.1 倒立摆控制演示实例 231

11.2 元胞自动机演示实例 237

11.3 小结 242

思考与练习 242

附录 matlab中的函数分类索引 243

参考文献 251

本图书信息来源:互动出版网

《MATLAB面向对象程序设计》

时间: 2024-08-24 22:09:15

《MATLAB面向对象程序设计》的相关文章

CI框架源码阅读笔记3 全局函数Common.php

从本篇开始,将深入CI框架的内部,一步步去探索这个框架的实现.结构和设计. Common.php文件定义了一系列的全局函数(一般来说,全局函数具有最高的加载优先权,因此大多数的框架中BootStrap引导文件都会最先引入全局函数,以便于之后的处理工作). 打开Common.php中,第一行代码就非常诡异: if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 上一篇(CI框架源码阅读笔记2 一切的入口 index

IOS测试框架之:athrun的InstrumentDriver源码阅读笔记

athrun的InstrumentDriver源码阅读笔记 作者:唯一 athrun是淘宝的开源测试项目,InstrumentDriver是ios端的实现,之前在公司项目中用过这个框架,没有深入了解,现在回来记录下. 官方介绍:http://code.taobao.org/p/athrun/wiki/instrumentDriver/ 优点:这个框架是对UIAutomation的java实现,在代码提示.用例维护方面比UIAutomation强多了,借junit4的光,我们可以通过junit4的

Yii源码阅读笔记 - 日志组件

?使用 Yii框架为开发者提供两个静态方法进行日志记录: Yii::log($message, $level, $category);Yii::trace($message, $category); 两者的区别在于后者依赖于应用开启调试模式,即定义常量YII_DEBUG: defined('YII_DEBUG') or define('YII_DEBUG', true); Yii::log方法的调用需要指定message的level和category.category是格式为“xxx.yyy.z

源码阅读笔记 - 1 MSVC2015中的std::sort

大约寒假开始的时候我就已经把std::sort的源码阅读完毕并理解其中的做法了,到了寒假结尾,姑且把它写出来 这是我的第一篇源码阅读笔记,以后会发更多的,包括算法和库实现,源码会按照我自己的代码风格格式化,去掉或者展开用于条件编译或者debug检查的宏,依重要程度重新排序函数,但是不会改变命名方式(虽然MSVC的STL命名实在是我不能接受的那种),对于代码块的解释会在代码块前(上面)用注释标明. template<class _RanIt, class _Diff, class _Pr> in

CI框架源码阅读笔记5 基准测试 BenchMark.php

上一篇博客(CI框架源码阅读笔记4 引导文件CodeIgniter.php)中,我们已经看到:CI中核心流程的核心功能都是由不同的组件来完成的.这些组件类似于一个一个单独的模块,不同的模块完成不同的功能,各模块之间可以相互调用,共同构成了CI的核心骨架. 从本篇开始,将进一步去分析各组件的实现细节,深入CI核心的黑盒内部(研究之后,其实就应该是白盒了,仅仅对于应用来说,它应该算是黑盒),从而更好的去认识.把握这个框架. 按照惯例,在开始之前,我们贴上CI中不完全的核心组件图: 由于BenchMa

CI框架源码阅读笔记2 一切的入口 index.php

上一节(CI框架源码阅读笔记1 - 环境准备.基本术语和框架流程)中,我们提到了CI框架的基本流程,这里这次贴出流程图,以备参考: 作为CI框架的入口文件,源码阅读,自然由此开始.在源码阅读的过程中,我们并不会逐行进行解释,而只解释核心的功能和实现. 1.       设置应用程序环境 define('ENVIRONMENT', 'development'); 这里的development可以是任何你喜欢的环境名称(比如dev,再如test),相对应的,你要在下面的switch case代码块中

Apache Storm源码阅读笔记

欢迎转载,转载请注明出处. 楔子 自从建了Spark交流的QQ群之后,热情加入的同学不少,大家不仅对Spark很热衷对于Storm也是充满好奇.大家都提到一个问题就是有关storm内部实现机理的资料比较少,理解起来非常费劲. 尽管自己也陆续对storm的源码走读发表了一些博文,当时写的时候比较匆忙,有时候衔接的不是太好,此番做了一些整理,主要是针对TridentTopology部分,修改过的内容采用pdf格式发布,方便打印. 文章中有些内容的理解得益于徐明明和fxjwind两位的指点,非常感谢.

CI框架源码阅读笔记4 引导文件CodeIgniter.php

到了这里,终于进入CI框架的核心了.既然是"引导"文件,那么就是对用户的请求.参数等做相应的导向,让用户请求和数据流按照正确的线路各就各位.例如,用户的请求url: http://you.host.com/usr/reg 经过引导文件,实际上会交给Application中的UsrController控制器的reg方法去处理. 这之中,CodeIgniter.php做了哪些工作?我们一步步来看. 1.    导入预定义常量.框架环境初始化 之前的一篇博客(CI框架源码阅读笔记2 一切的入

jdk源码阅读笔记之java集合框架(二)(ArrayList)

关于ArrayList的分析,会从且仅从其添加(add)与删除(remove)方法入手. ArrayList类定义: p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Monaco } span.s1 { color: #931a68 } public class ArrayList<E> extends AbstractList<E> implements List<E> ArrayList基本属性: /** *

dubbo源码阅读笔记--服务调用时序

上接dubbo源码阅读笔记--暴露服务时序,继续梳理服务调用时序,下图右面红线流程. 整理了调用时序图 分为3步,connect,decode,invoke. 连接 AllChannelHandler.connected(Channel) line: 38 HeartbeatHandler.connected(Channel) line: 47 MultiMessageHandler(AbstractChannelHandlerDelegate).connected(Channel) line: