面向对象程序设计概述PPT教学课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2020/12/09
4
例如“自行车”和“这辆白色的自行车”
“这辆白色的自行车”是物质,它是具体的客观存在; “自行车”是意识,它是一个抽象的概念,是对客观存在的事物的一种概 括。
这些现实世界中的事物可直接映射到面向对象系统的解空间,现实世界 中的物质可对应于面向对象系统中的抽象概念——“对象”; 现实世界中的意识可对应面向对象系统中的抽象概念——“类”。 自行车在面向对象系统中可用自行车类来表达,一辆白色的白行车在面 向对象系统中是一个具体的对象,是自行车类的一个实例。
两者之间的比较 可视化的基础是面向对象编程的实现(OOP) C++是面向对象编程方法+结构化的编程方法(SP ) 3、Delphi简介:聪明的程序员用Delphi,真正的程序员用C++ 4、Java简介:纯面向对象语言
JDK、J++Builder、Visual J++ 5、C#
2020/12/09
3
·什么是对象?
例如:人与张三,那个是类?那个是对象?这个对象是不是这个类的对
象?
对象是某类的一个实例(特例),是特殊性。
2020/12/09
10
3、对象的属性和方法 什么是对象的属性?数据成员——王东例中的状态 什么是对象的方法?函数成员——王东例中的功能
2020/12/09
11
4、面向对象编程的基本特性 四个基本特性:抽象、封装、继承与多态 封装:将细节信息隐藏起来,用户通过接口实现对数据等的操作(如,机 器密码) 如去ATM机上取款,知道怎么用,有个交互界面,但内部如何操作? 抽象:对实例进行分析,抽去出共同性质 继承:什么是继承? 父类子类,基类派生类,超类 单继承、多继承
对象张三
取 钱
取 钱
对象李四
张三的银子 李四的银子
7
面向对象程序设计能支持的软件开发策略有:
·编写可重用代码; ·编写可维护的代码; ·共享代码; ·精化已有的代码。
2020/12/09
8
1、什么是面向对象编程,怎样理解?
如果组装计算机,组装过一台,会第二台吗?
·第一步:将客观事物进行抽象,并对同一类进行归纳 ·第二步:将抽象的结果分为:数据和行为 ·第三步:将数据个行为封装在这个类中 ·第四步:将这个类用某种计算机语言表示出来(即编程)
6、Introductory Combinatorics(组合数学) Third Edition Richard A. Brualdi
2020/12/09
2
C++语言编译器介绍及相关语言技术
问题:什么是语言?什么是编译器?什么是编程环境?
1、Turbo c / Microsoft c /Borland c /Watcom c 2、可视化的:Visual c++ / Borland C++ Builder
2020/12/09
12
PPT精品课件
谢谢观看
Thank You For Watching
13
“物质自行车”在人的反应中转换为“意识自行车”,被概括并抽象了。
2020/12/09
5
2020/12/09
6
面向对象程序设计将数据及对数据的操作放在一起,作为一个相互依存、 不可分割的整体来处理,它采用数据抽象和信息隐藏技术。它将对象及 对对象的操作抽象成一种新的数据类型——类,并且考虑不同对象之间 的联系和对象类的重用性。
张三的Money决不能变成李四的银子。 结构化中,数据:张三的银子、李四的银子
过程(共用):取银子、存银子
张三的银子
取
钱
李四的银子
面向对象中,对象张三: 数据——银子 方法(自己的,继承下来的)—取银子、存银子 对象李四: 数据——银子 方法(自己的,继承下来的)—取银子、存银子
2020/12/09
2020/12/09
9Leabharlann 2、类与对象 ·类似于类型与变量的关系。如 int i; ·什么是类? 在日常生活中,我们经常听到“类”这个术语,它是对一组客观对象的抽 象,它将该组对象所具有的共同特征(包括结构特征和行为特征)集中起 来,以说明该组对象的能力和性质。 例如“人类”这个词就抽象着所有人的共同之处。“人以群分、物以类聚” 在计算机世界的系统构成上,类形成了一个具有特定功能的模块和一种 代码共享的手段。它为程序员提供了一种工具,使得他们可以方便地建 立所需要的任何类型,并可以像一般类型那样方便地使用。 类是这一类的事物共同特性(包括数据和行为)的抽象。是普遍性。
问题: 1、如何用学过的C语言来表示一个人/全体的人?
或一台录音机/所有的录音机? 银行帐号/或ATM机
2、数据和过程 模块化设计与传统设计的不同:数据与过程分离 如: Play( game) 面向对象:数据与过程的封装 如Game.Play()与Record.Play()
数据:对基本特性进行描述 过程:对数据进行操作处理
第一章 面向对象程序设计概述
2020/12/09
1
推荐参考文献
1、The Complete C++ Traning Course(c++大学教程) Second Edition Harvey M. Deitel & Paul James Deitel
2、Inside the C++ Object Model(深度c++对象模型) Stanley B. Lippman
3、Thinking in C++(c++编程思想) second edition Bruce Eckel
4、Borland C++ Builder4标准教程 北京宝兰-英博思信息技术有限公司
5、The C++ Programing Language Third Edition Bjarne Stroustrup