第1章面向对象基础知识[1]课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第1章面向对象基础知识[1]课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 基础知识 课件
- 资源描述:
-
1、1C+面向对象程序设计Object-Oriented Programming in C+2课程概述 (Course Outline)第一章 面向对象的基础知识第二章 C+编程基础第三章 C+的函数第四章 对象和类 ( Object & Class )第五章 类的应用第六章 运算符的重载 (Overloading Operators)3第七章 继承 (Inheritance)第八章 虚函数与多态性 (Virtual function & Polymorphism)第九章 C+的I/O (Input & Output)第十章 模板和异常 (Template & Exception)第十一章 标准模
2、板库 (STL Standard Template Library)第十二章 面向对象程序设计技术4第一章面向对象的基本知识1.面向对象程序设计诞生的原因1.1 面向过程语言 1.2面向对象的程序设计 2.面向对象语言的特征2.1 封装 2.2 继承2.3 多态3.C+和 C4.面向对象的软件开发5.UML 建模语言5概述 本章将介绍面向对象程序设计(Object-Oriented Programming, OOP) 诞生的原因,为什么需要OOP,有什么它可以做到,而传统的编程语言如C, Pascal, BASIC 却做不到的? OOP 需要遵循什么原则?C+和C语言之间有什么联系?为什么需要
3、用UML?61. 面向对象程序设计诞生的原因1.1 面向过程语言 (Procedural Language)C, Pascal, FORTRAN, 以及其它的语言,都被称为面向过程的语言,也就是说,这些语言中的每一个语句都在告诉计算机该做什么:接受输入,求和,除以3,显示输出等等。当程序变大时,一个面向过程的程序被划分成了多个函数,每个函数都有明确的定义及实现。7 把大量的函数聚集到一起就形成一个模块(module) ,这样的模块常常是一个文件。 把程序划分为函数和模块是结构化程序设计(structured programming) 的基石81.1.1 面向过程设计的问题 随着项目复杂度的增加
4、,面向过程设计也显得使项目越来越难以维护,管理。 原因是什么?有两个相互关联的问题: 函数能够不受限制地访问全局变量 函数和数据之间缺乏联系。91.1.2 面向过程范例 在大型程序中,有非常多的函数和全局数据,它们之间有巨大的潜在连接。大量的连接会导致程序结构很难概念化,而且使得程序很难修改。全局变量全局变量全局变量全局变量全局变量全局变量函数函数函数函数函数函数函数函数101.2 面向对象的程序设计与结构化程序设计方法相比,更符合人类认识现实世界的思维方式 已成为程序设计的主流方向111.2.1 现实世界建模现实世界建模对象对象现实世界中 万物皆对象 都具有各自的属性属性(名词),对外界都呈
5、现各自的行为行为(动词) 属性: 对于人,眼睛的颜色,职位是属性。行为:行为是现实世界中的对象对于某些刺激的反应。12程序中 一切都是对象 都具有标识 (identity), 属性和行为(behavior)现实世界中的属性相当于程序中的数据,它们都有一个特定的值。行为就如同一个函数,通过函数(function) 实现他的行为, 即为了做某事调用一个函数,然后该函数再执行请求。13 例:钟表 数据(属性)int Hour; int Minute; int Second; 方法(行为)SetTime(); ShowTime();14 例:学生 数据(属性)String name; int ID;
6、int Eng; int Math; 方法(行为)统计成绩getEng(), getMath() getTotal()15类 将属性及行为相同或相似的对象归为一类。 类可以看成是对象的抽象,代表了此类对象所具有的共有属性和行为。 可以将现实生活中的对象经过抽象,映射为程序中的对象。对象在程序中是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(Class)。 对象是类的具体实例。162. 面向对象语言的特征(C+) 对象对象(Object)(Object):当采用一门面向对象语言来解决程序设计问题时,不用再问如何将问题划分为函数,而要问如何将它划分为对象。牢记:用对象而不是函数牢记:用对象
7、而不是函数来思考问题来思考问题。 类类(Class)(Class):类是许多相似对象的共同性描述,它如同一个计划或蓝图,指出这个类的对象包含了哪些数据和函数。但定义类并不会创建任何对象。对象常常也被称为类的实例(Instance)。17面向对象程序设计涉及的主要概念封装继承多态 18 封装(encapsulation):将数据和它的函数装进一个实体,这就是面向对象方法一个重要特征。对象通过操作接口(函数)与外部发生联系,而内部的具体细节则被隐藏起来,对外是不可见的。2.1 封装封装 (encapsulation)(encapsulation)19对象的函数在C+中叫做成员函数(member f
展开阅读全文