书签 分享 收藏 举报 版权申诉 / 35
上传文档赚钱

类型第1章面向对象基础知识[1]课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3043622
  • 上传时间:2022-06-25
  • 格式:PPT
  • 页数:35
  • 大小:106.50KB
  • 【下载声明】
    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

    8、unction), 它提供了访问该对象内数据的唯一途径。也就是说,如果想读取一个对象内的数据项(data member), 就必须调用该对象的成员函数。这样可以避免数据被意外改变。20面向对象范例面向对象范例典型的C+程序由许多对象组成,它们通过调用相互的成员函数来进行通信。数据数据数据成员函数成员函数成员函数成员函数成员函数成员函数对象1对象2对象321对象的类比 (公司示例)销售数据人力资源数据财务数据销售经理秘书人力资源经理人力资源部职员首席财务官财务助理销售部门人力资源部财务部22类的基本思想引出了继承的概念。日常生活中将类分为子类的例子:交通工具类可分为轿车,卡车,公共汽车等等。除了

    9、与类的其他成员所共有的特征,每个子类还有它自己的特征。2.2 继承继承(Inheritance)23基类和派生类:在C+中,原始的类称为基类(Base Class), 由它继承的类定义时共享它的特征,也可加入自己的特征,这些类被称为派生类(Derived Class)。特征A特征B特征A特征B特征C特征A特征B特征D特征E特征A特征B特征F24TypeBrandTypeBrandHornTypeBrandEngineAirbagTypeBrandSeatsVehicleBicycleMotoVehicleAirplane25可重用性可重用性(reusability) 继承的概念为可重用性的思想

    10、提供了重要的扩展。程序员可以使用已存在的类,生成派生类,自由地增加其他的特征和功能。 可轻松重用已存在的软件是OOP的一个主要优点。262.3 多态 多态多态(Polymorphism) 指相同的行为被不同的对象来执行时,可以有不同的实现方式,而用哪一种方式取决于它所操作的内容。273. C+和C C+的由来:C是一种面向过程的语言,AT&T Bell Lab的Bjarne Strustrump 在C语言的基础上进行了修改和扩充,开发出支持面向对象的程序设计的C+. C+和C的关系:C+是C语言的一个超集,几乎所有C中正确的语句在C+中也同样是正确的,反之却不成立。284. 面向对象的软件开发

    11、1、面向对象分析(Object oriented analysis, OOA)系统分析员和用户一起,对用户的需求做出分析和明确的描述。从客观存在的事物和它们之间的关系归纳出有关的对象及其关系,并将具有相同属性和行为的对象用一个类来表示。2、面向对象设计(Object oriented design,OOD)根据需求,对每一部分分别进行具体的设计,首先是类的设计,可能包括多个层次(利用继承和派生机制),然后提出程序设计的思路和方法。293、面向对象编程(Object oriented programming, OOP)选用适当的开发工具进行编程4、面向对象测试(Object oriented t

    12、est, OOT)对程序进行严格的测试。5、面向对象维护(Object oriented software maintenance, OOSM)30 UML (Unified Modeling Language) 是为计算机程序建模的一门图形化“语言”。“建模”就是创建某事物的简化表示,如,蓝图就是房子的模型。UML就是在考虑实际的代码细节之前,用图示将程序结构在很高的层次上表示出来。5、UML 建模语言315.1 UML的起源 UML基于三门独立的建模语言: 一门由Grady Boosh 在Rational Software 创建。 一门由James Rumbaugh 在General El

    13、ectric 创建。 一门由Ivar Jacobson 在Ericson建立。最后, James Rumbaugh 和 Ivar Jacobson 加入了Rational Software,他们在20世纪90年代末统一了各自的建模语言,提出了统一建模语言(UML)。接着,OMG(Object Management Group)采用了这个结果。325.2 为何需要UML? 对于大型的程序,仅仅看源代码很难搞清楚其各部分之间的联系。UML 正是提供了一种方法去知道程序概貌,并能描述程序的主要部分和它们是如何一起工作的。 除了帮助理解一个程序是如何工作外,它能帮助进行程序的初始设计。实际上,从规范文

    14、档,测试到维护,UML在软件开发的所有阶段都是有用的。335.3 UML的图集 UML 最重要的部分是9种类图。如: 类图(Class Diagram)表示类之间的关系。 对象图(Object Diagram)表示特定对象之间的关系。 时序图(Sequence Diagram)表示对象之间在时间上的通信。 协作图(Collaboration Diagram)按照时间和空间顺序表示对象之间的交互和它们之间的关系。34状态图(State Diagram)表示对象的状态和响应。用例图(User Case Diagram)表示程序用户如何与程序交互。活动图(Activity Diagram)表示系统元素的活动。组件图(Component Diagram)表示实现系统的元素的组织。配置图(Deployment Diagram)表示环境的配置35 UML 的建模机制UML有两套建模机制:静态建模机制和动态建模机制。 静态建模机制包括用例图,类图,对象,包,组件图和配置图。 动态建模机制包括消息,状态图,时序图,协作图,活动图。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第1章面向对象基础知识[1]课件.ppt
    链接地址:https://www.163wenku.com/p-3043622.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库