当前位置:首页 > 工业技术
面向对象程序设计实用教程  第2版
面向对象程序设计实用教程  第2版

面向对象程序设计实用教程 第2版PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:张海藩,牟永敏编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2007
  • ISBN:7302146438
  • 页数:335 页
图书介绍:本书介绍面向对象程序设计的理论以及具体解决实际问题的方法。
《面向对象程序设计实用教程 第2版》目录

第1章 计算机与程序设计 1

1.1 计算机的基本结构 1

1.1.1 计算机硬件的基本组成 1

1.1.2 计算机的工作过程 4

1.2 程序设计语言 5

1.3 面向过程程序设计 8

1.3.1 模块化 8

1.3.2 抽象 9

1.3.3 信息隐藏和局部化 10

1.3.4 模块独立 10

1.3.5 结构程序设计技术 11

1.4 小结 12

习题 13

第2章 面向对象方法学引论 14

2.1 面向对象方法学概述 14

2.1.1 面向对象方法学导论 14

2.1.2 面向对象方法概述 15

2.1.3 面向对象方法的主要优点 17

2.1.4 喷泉模型 20

2.2 面向对象的概念 21

2.2.1 对象 21

2.2.2 其他概念 24

2.3 面向对象建模 27

2.4 对象模型 29

2.4.1 类图的基本符号 29

2.4.2 表示关系的符号 31

2.5 动态模型 35

2.5.1 状态 35

2.5.2 事件 36

2.5.3 符号 36

2.5.4 例子 37

2.6 功能模型 38

2.6.1 用例图 38

2.6.2 用例建模 40

2.7 3种模型之间的关系 41

2.8 小结 42

习题 43

第3章 一个面向对象的C++程序实例 44

3.1 面向对象分析与设计 44

3.1.1 需求陈述 44

3.1.2 面向对象分析 44

3.1.3 面向对象设计 45

3.2 用C++实现 47

3.2.1 定义类 48

3.2.2 声明数据成员 49

3.2.3 声明和定义成员函数 50

3.2.4 完整的C++程序 51

3.2.5 运行C++程序 55

3.3 小结 56

习题 57

第4章 数据成员 58

4.1 数据类型 58

4.1.1 基本数据类型 58

4.1.2 复合数据类型 61

4.1.3 指针和引用 65

4.2 const数据成员 72

4.3 静态数据成员 73

4.4 动态数据成员与对象生存期 75

4.4.1 动态数据成员 75

4.4.2 对象生存期与数据成员作用域 77

4.5 小结 78

习题 79

第5章 成员函数 81

5.1 成员函数的概念 81

5.2 算法描述 81

5.2.1 算法的概念 81

5.2.2 算法的表示 82

5.3 成员函数的定义与调用 83

5.3.1 成员函数的定义 83

5.3.2 成员函数的调用 84

5.3.3 函数指针与回调函数 85

5.3.4 内联函数 88

5.4 运算符和表达式 89

5.4.1 运算符及运算符优先级 89

5.4.2 表达式 91

5.4.3 数据类型的转换 94

5.5 控制结构 96

5.5.1 顺序结构 96

5.5.2 选择结构(又称分支结构) 96

5.5.3 循环结构 101

5.5.4 递归 106

5.6 函数参数的传递机制 107

5.6.1 值调用 107

5.6.2 引用调用 109

5.7 函数的参数 110

5.7.1 函数参数的求值顺序 110

5.7.2 数组作为函数参数 111

5.7.3 带默认值的函数 113

5.8 静态成员函数 114

5.9 函数的重载 115

5.10 两种特殊函数 117

5.10.1 构造函数 117

5.10.2 析构函数 118

5.11 用计算机求解智力游戏 118

5.12 小结 119

习题 120

第6章 封装性 123

6.1 C++中的类与对象 123

6.1.1 定义类的语法 123

6.1.2 定义类的例子 125

6.1.3 声明和使用对象 127

6.2 封装的好处 129

6.3 对象成员 132

6.4 const对象和const成员 134

6.4.1 const对象和只读成员函数 134

6.4.2 const对象成员 135

6.5 对象数组 136

6.6 自引用指针(this) 138

6.7 友元 141

6.8 小结 144

习题 145

第7章 继承性 147

7.1 继承的好处 147

7.2 C++定义派生类的语法 150

7.2.1 定义派生类的语法 150

7.2.2 访问权修饰符 150

7.3 基类成员的访问属性 152

7.3.1 同名成员 152

7.3.2 静态成员 154

7.3.3 访问声明 156

7.4 派生类对象的初始化 159

7.5 多重继承 161

7.5.1 语法 161

7.5.2 同名引出的二义性 162

7.5.3 公共基类带来的二义性 163

7.5.4 虚基类 165

7.6 基类与派生类之间的转换 167

7.6.1 赋值兼容规则 168

7.6.2 赋值兼容规则应用举例 169

7.7 小结 171

习题 172

第8章 重载 175

8.1 重载的好处 175

8.2 对运算符重载的限制 178

8.3 运算符重载的语法 180

8.3.1 用成员函数重载运算符 180

8.3.2 用成员函数重载运算符之例 181

8.3.3 用友元函数重载运算符 184

8.3.4 用友元函数重载运算符之例 184

8.4 重载赋值运算符 187

8.4.1 指针悬挂问题 187

8.4.2 重载赋值运算符解决指针悬挂问题 189

8.5 重载++和--运算符 190

8.6 重载运算符的规则 191

8.7 类类型转换 193

8.7.1 用构造函数完成类类型转换 193

8.7.2 类类型转换函数 195

8.8 小结 197

习题 198

第9章 多态性 202

9.1 静态联编与动态联编 202

9.1.1 静态联编 202

9.1.2 动态联编 205

9.2 虚函数的声明与使用 206

9.2.1 声明虚函数 206

9.2.2 使用虚函数 207

9.2.3 动态联编的实现 209

9.3 虚函数应用实例之一 210

9.4 纯虚函数 212

9.5 虚函数应用实例之二 213

9.6 多态性带来的好处 218

9.7 小结 220

习题 221

第10章 I/O流 224

10.1 C++流库概述 224

10.2 预定义类型的输入/输出 226

10.2.1 istream流类 226

10.2.2 ostream流类 227

10.2.3 输入运算符 227

10.2.4 输出运算符 229

10.3 格式控制 230

10.3.1 用ios类成员函数控制格式 230

10.3.2 用控制符控制格式 233

10.4 自定义类型的输入/输出 236

10.4.1 重载输入运算符 236

10.4.2 重载输出运算符 237

10.5 文件的输入/输出 238

10.5.1 面向文件的流类 239

10.5.2 文件的读写 240

10.6 小结 244

习题 245

第11章 模板 247

11.1 从类属到模板 247

11.1.1 无约束类属 247

11.1.2 约束类属 248

11.2 函数模板与模板函数 249

11.2.1 概念 249

11.2.2 重载 250

11.3 类模板与模板类 252

11.3.1 定义类模板 252

11.3.2 使用类模板 253

11.3.3 类模板的派生 254

11.4 模板应用实例 255

11.4.1 用类模板实现类属链表 255

11.4.2 派生出集合类模板和集合类 258

11.5 小结 259

习题 260

第12章 异常处理 262

12.1 异常的概念 262

12.2 异常处理的基本思想 262

12.3 C++异常处理的实现 263

12.3.1 异常处理的语法 263

12.3.2 异常的实现步骤与简单实例 264

12.3.3 使用异常处理机制的规则 266

12.4 异常抛出与捕获的对应关系 266

12.5 标准程序库异常处理 271

12.6 小结 273

习题 273

第13章 面向对象程序设计方法的应用实例 274

13.1 需求 274

13.2 分析 274

13.2.1 定义问题域 274

13.2.2 分析并抽象出与监测有关的类 275

13.2.3 描述与监测有关的类之间的关系 276

13.2.4 分析与抽象出与显示有关的类 277

13.2.5 分析与抽象出与运行机制有关的类 277

13.2.6 综合出系统的初步对象模型 279

13.3 设计 280

13.3.1 系统构架 280

13.3.2 系统的详细对象模型 281

13.3.3 确定机制 282

13.3.4 定义与计时器相关类 282

13.3.5 定义管理监测类的容器类 283

13.3.6 综合出系统的运行机制 285

13.3.7 制定完善细化功能模块的顺序 285

13.3.8 定义与监测有关的类 286

13.4 小结 288

习题 289

第14章 基于Windows的面向对象语言——VC++ 290

14.1 Windows的编程模式 290

14.2 Microsoft基础类库(MFC)及应用程序框架 293

14.3 Microsoft基础类库的消息映射 301

14.4 VC++的文档-视图模型 301

14.5 VC++程序设计实例 303

14.5.1 面向对象分析 304

14.5.2 面向对象设计 306

14.6 小结 311

习题 311

第15章 基于Windows的面向对象语言——Java 312

15.1 Java的特点 312

15.2 Java简介 315

15.2.1 Java中类的定义 315

15.2.2 Java类中的数据与方法 315

15.2.3 Java中的继承性 317

15.2.4 Java中的多态性 317

15.3 Java与C++的区别 318

15.4 JVM的概念与规范 320

15.4.1 JVM的概念 320

15.4.2 JVM的规范 320

15.5 Java的应用 321

15.6 小结 327

习题 327

附录A 常用库函数一览表 328

附录B ASCII码表注解 330

附录C 键盘常用键对应ASCII码 331

附录D ASCII基表 333

附录E ASCII扩展表 334

参考文献 335

相关图书
作者其它书籍
返回顶部