面向对象编程技术PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
一、序
课程学习目的
1. 开拓视野 2. 激发学习兴趣 3. 步入新境地
4
关键是思 想观念的
转变
一、序
C程序员
?
C++程序员
5
返回
二、面向对象编程语言概述
1. 对象概述 2. 面向对象与面向过程 3. 结构化与非结构化 4. 事件驱动的执行机制 5. 软件复用
寻找面向对象
编程语言与面
向过程语言异
三、学习忠告
4. 会用Visual C++,并不说明你会C++; 5. 学class并不难,template、STL、generic programming也
不过如此——难的是长期坚持实践和不遗余力的博览群书; 6. 看Visual C++的书,是学不了C++语言的; 7. 浮躁的人容易说:XX语言不行了,应该学YY;——是你
4. 缺点:效率低,是手工作 坊式的编程
面向对象:
1. 观点:自然界是由实体(对 象)所组成。
2. 程序设计方法:使用面向对 象的观点来描述模仿并处理 现实问题。
3. 要求:高度概括、分类和抽 象。
4. 面向对象目的:使用户既不 需要懂得太多的计算机、也 不需要懂太多的业务。
是设计理念的转变
9
返回
面向对象的设计思想
的人; 13. 把时髦的技术挂在嘴边,还不如把过时的技术记在心里;
19
三、学习忠告
14. 学习编程最好的方法之一就是阅读源代码; 15. 看得懂的书,请仔细看;看不懂的书,请硬着头皮看; 16. 别指望看第一遍书就能记住和掌握什么——请看第二
遍、第三遍; 17. C++绝不是所谓的C的“扩充”——如果C++一开始就
▪ 事件就是使某个对象进入活动状态(激活)的 一种操作或动作。
15
返回
5. 软件复用
▪ 传统程序设计方法在软件复用上的困难
▪ 面向对象程序设计在类的基础上构造同类的 对象(如实例化,继承),为软件在OOA及 OOD上提供有力的支持
1. 代码的复用
软件复用的范畴
2. 设计的复用 3. 分析的复用
4. 测试信息的复用
三种基本结构: 1. 顺序结构 2. 选择结构 3. 循环结构
ຫໍສະໝຸດ Baidu
消除GOTO语句
14
返回
4 事件驱动
▪ Windows下的应用程序的用户界面都是由窗体、 菜单和控件等对象构成的,各个对象的动作以 及对象之间的关联,完全取决于操作者所做的 操作。(程序的运行并没有固定的顺序),这 种工作模式叫事件或消息驱动方式。
-之抽象 ▪ 抽象是对具体对象(问题)进行概括,抽出这一类
对象的公共性质并加以描述的过程。
• 数据抽象:描述某类对象的属性或状态(对象相互区别 的物理量)。
• 代码抽象:描述某类对象的共有的行为特征或具有的功 能。
• 抽象的实现:通过类的定义。
10
面向对象的设计思想
-之分类 ▪ 层层分类,使概念逐渐细化,即具体化。 ▪ 例如,生物分为动物和植物,动物又分为脊椎动物
▪ 方法
• 方法是指控制对象动作行为的方式。每个对象的动 作及行为都是由一些特定的“方法”控制的。
返 回8
2 面向对象与面向过程
面向过程:
1. 重点放在如何实现细节过 程方面,将数据与函数分 开。
2. 形式:主模块+若干个子模 块 (main()+子函数)。
3. 特点: 自顶向下,逐步求精—— 功能分解。
本章内容
一.序 二.面向对象思想概述 三.学习忠告
1
整体概况
概况一
点击此处输入 相关文本内容
01
概况二
点击此处输入 相关文本内容
02
概况三
点击此处输入 相关文本内容
03
2
一、序
探讨学习语言的 一般过程与方法
▪ 学习高级语言的体会
▪ 如何快速入手、掌握一门高级编程语言
▪ 学习语言有捷径吗?
?
个人学习的成功之处 快速切入一门语言
……
16
返回
三、学习忠告
1. 把C++当成一门新的语言学习(和C没啥关系!真 的。);
2. 不要被VC、BCB、BC、MC、TC等词汇所迷惑— —他们都是集成开发环境,而我们要学的是一门语 言;
3. 不要放过任何一个看上去很简单的小编程问题—— 他们往往并不那么简单,或者可以引伸出很多知识 点;
17
12
面向对象的设计思想
-之继承
子类与父类
1. 子类继承父类所有的属性、方法,并可定义自 己的特有属性与方法
2. 提高软件开发效率,为软件复用提供强有力的 支持
13
3 结构化程序设计
结构化程序设计的概念是荷兰学者Dijkstra 首先提出,用三种基本的程序控制结构来编制 程序,从而使程序具有好的结构
起名叫Z语言,你一定不会把C和Z语言联系得那么紧 密;
20
三、学习忠告
18. 学习编程的秘诀是:编程,编程,再编程; 19. 读完了《Inside The C++ Object Model》以后再来认定
自己是不是已经学会了C++; 20. 不要漏掉书中任何一个练习题——请全部做完并记录下
解题思路; 21. 既然决定了学C++,就请坚持学下去,因为学习程序设计
和无脊椎动物,脊椎动物包括哺乳动物,哺乳动物 又分为猫、狗……,等等
11
面向对象的设计思想
-之封装 ▪ 将抽象出的数据成员、代码成员相结合,将它们视
为一个整体。
1. 目的是增强安全性和简化编程,使用者不必了解具体的 实现细节,而只需要通过外部接口,以特定的访问权限, 来使用类的成员。
2. 实现封装:类定义中的{ }
语言的目的是掌握程序设计技术,而程序设计技术是跨 语言的;
21
三、学习忠告
22. 既然决定了学C++,就请坚持学下去,因为学习程序设计语 言的目的是掌握程序设计技术,而程序设计技术是跨语言 的;
同点
6
返回
面向对象的现实渊源
谁来开这加飞 机?
现实中的简化模 型
冯.诺依曼 遗传算 神经网络 计算机 法
7
1 对象概述
▪ 对象及类
• 类定义了对象特征以及对象外观和行为的模板。它 刻划了一组具有共同特征的对象。
• 对象是类的实例,现实世界的任意客观实体皆可视 为对象。
▪ 属性
• 属性是对象的特征。每一类对象都有若干属性。
自己不行了吧!? 8. 浮躁的人容易问:我到底该学什么;——别问,学就对了;
18
三、学习忠告
9. 浮躁的人容易问:XX有钱途吗;——建议你去抢银行; 10. 浮躁的人容易说:我要中文版!我英文不行!——不行?
学呀! 11. 浮躁的人容易问:XX和YY哪个好;——告诉你吧,都
好——只要你学就行; 12. 浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持