面向对象方法概述课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《面向对象方法概述课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 方法 概述 课件
- 资源描述:
-
1、面向对象方法概述v面向对象方法的组成v什么是面向对象v面向对象技术的发展历史v面向对象的基本概念v面向对象的软件工程方法 面向对象方法概览1 什么是面向对象什么是面向对象 面向对象(Object Oriented)技术是软件工程领域中的重要技术,这种软件开发思想比较自然地模拟了人类认识客观世界的方式,成为当前计算机软件工程学中的主流方法。应该特别强调的是,面向对象技术不仅仅是一种程序设计方法,更重要的是一种对真实世界的抽象思维方式。 1 什么是面向对象什么是面向对象v面向对象方法按照人类的自然思维方式,面对客观世界建立软件系统模型:v对象、类、继承、封装等基本概念符合人类的自然思维方式。v有利
2、于对业务领域和系统责任的理解。v有利于人员的交流1 什么是面向对象什么是面向对象 面向对象技术的基本观点如下:(1) 客观世界是由对象组成的,任何客观的事物或实体都是对象,复杂的对象可以由简单的对象组成。(2) 具有相同数据和相同操作的对象可以归并为一个类,对象是对象类的一个实例。(3) 类可以派生出子类,子类继承父类的全部特性(数据和操作),又可以有自己的新特性。子类与父类形成类的层次结构。(4) 对象之间通过消息传递相互联系。类具有封装性,其数据和操作等对外界是不可见的,外界只能通过消息请求进行某些操作,提供所需要的服务。 1 什么是面向对象什么是面向对象 软件工程学家Codd和Yourd
3、on认为: 面向对象对象类继承通信 如果一个软件系统采用这些概念来建立模型并予以实现,那么它就是面向对象的。2 面向对象技术的发展历史面向对象技术的发展历史 面向对象方法起源于面向对象程序设计语言,后来才逐步形成了面向对象的分析和设计方法,其发展过程大体上经历了初始阶段、发展阶段和成熟阶段等过程。2 面向对象技术的发展历史面向对象技术的发展历史 初始阶段60年代末挪威奥斯陆大学和挪威计算中心共同研制的Simula语言是面向对象语言发展历史上的第一个里程碑,它首先引入了类的概念和继承机制,后来的一些著名面向对象编程语言(如Smalltalk、C+、Eiffel)都受到Simula的启发。 KRI
4、STEN NYGAARD(Simula创始人)2 面向对象技术的发展历史面向对象技术的发展历史 初始阶段80年代,Xerox研究中心推出了Smalltalk语言和环境,它具备了面向对象语言的继承和封装的主要特征,使面向对象程序设计方法趋于完善,掀起了面向对象研究的高潮。2 面向对象技术的发展历史面向对象技术的发展历史 发展阶段从80年代中期到90年代,面向对象语言十分热门,大批比较实用的面向对象编程语言(Object Oriented Programming Language,OOPL)涌现出来,如C+、Objective-C、Object Pascal、CLOS(Common Lisp Ob
5、ject System)、Eiffel、Actor等,特别是C+语言已成为目前应用最广泛的OOPL。Bjarne Stroustrup(C+创始人)2 面向对象技术的发展历史面向对象技术的发展历史 发展阶段90年代中期,出现了JAVA语言。 JAMES GOSLING2 面向对象技术的发展历史面向对象技术的发展历史 发展阶段从80年代中期到90年代,面向对象语言十分热门,大批比较实用的面向对象编程语言(Object Oriented Programming Language,OOPL)涌现出来,如C+、Objective-C、Object Pascal、CLOS(Common Lisp Obj
6、ect System)、Eiffel、Actor等,特别是C+语言已成为目前应用最广泛的OOPL。面向对象编程语言的繁荣是面向对象方法走向实用的重要标志,也是面向对象方法在计算机学术界、产业界和教育界日益受到重视的推动力。 2 面向对象技术的发展历史面向对象技术的发展历史 成熟阶段在C+语言十分热门的时候,人们开始了对面向对象分析(Object Oriented Anlysis,OOA)的研究,进而延伸到面向对象设计(Object Oriented Design,OOD)。特别是90年代以后,许多专家都在尝试用不同的方法进行面向对象的分析与设计,其中比较著名的有Booch的方法、Rumbaug
7、h的OMT方法、Coad/Yourdon的方法、Wirtf-Brock的RDD方法、Shlear-Mellor的方法、Gibon的OBA方法、Jacobson的OOSE方法、Martin-Odell的方法、Fusion方法等,这些方法各有所长,力图解决复杂软件系统的开发问题。在这段时期,面向对象的分析和设计技术逐渐走向实用,最终形成了从分析、设计到编程、测试与维护一整套的软件工程体系。 3 面向对象的基本概念面向对象的基本概念 对象对象从不同的角度有不同的含义,我们针对系统开发来讨论对象的概念,其定义是:对象(Object)是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,由一组
8、属性和对这组属性进行操作的一组服务组成。在这里,属性和服务是构成对象的两个基本要素,其定义是:属性是用来描述对象静态特征的一个数据项。服务是用来描述对象动态特征(行为)的一个操作序列。 3 面向对象的基本概念面向对象的基本概念 例子:面向对象的基本概念(例子)面向对象的基本概念(例子) What are the games objects? What do those objects knowhow to do? What properties do they have?面向对象的基本概念(例子)面向对象的基本概念(例子)What are the games objects?v piece,
9、boardCapabilities: What do those objects know how to do?v piece:v be createdv fallv rotatev stop at collisionv board:v be createdv remove rowsv check for end of game Properties: What attributes and components do they have?v piece:v orientationv positionv shapev colorv board:v sizev rows3 面向对象的基本概念面向
10、对象的基本概念 从一般意义上讲,对象是现实世界中的一个实际存在的事物,它可以是有形的,如车辆、房屋等,也可以是无形的,如国家、生产计划等。而人们在开发一个系统时,则在一定的范围(也称问题域)内考虑和认识与系统目标有关的事物,并用系统中的对象来抽象地表示它们。在这里,对象只描述客观事物本质的、与系统目标有关的特征,而不考虑那些非本质的、与系统目标无关的特征。同时,对象是属性和服务的结合体,对象的属性值只能由这个对象的服务来读取和修改。 3 面向对象的基本概念面向对象的基本概念类类(Class)是具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和服务两
11、个主要部分。类好比是一个对象模板,用它可以产生多个对象。类所代表的是一个抽象的概念或事物,在客观世界中实际存在的是类的实例,即对象。 3 面向对象的基本概念面向对象的基本概念类举例:在学校教学管理系统中,“学生”是一个类,其属性具有姓名、性别、年龄等,可以定义“入学注册”、“选课”等操作。一个具体的学生“王平”是一个对象,也是“学生”类的一个实例。3 面向对象的基本概念面向对象的基本概念类 把众多的事物归纳并划分成一些类是人类在认识客观世界时经常采用的思维方法,分类的原则是抽象,从那些与当前目标有关的本质特征中找出事物的共性,并将具有共同性质的事物划分成一类,得出一个抽象的概念。例如:人、房屋
12、、树木等都是一些抽象的概念,它们是一些具有共同特征的事物的集合,称为类。类的概念使我们能对属于该类的全部个体事物进行统一的描述,树具有树根、树干、树枝和树叶,它能进行光合作用,这个描述适合所有树,而不必对每一棵具体的树进行描述。 3 面向对象的基本概念面向对象的基本概念 封装封装(Encapsulation)是把对象的属性和服务结合成一个独立的系统单位,并尽可能隐藏对象的内部细节。封装是面向对象方法的一个重要原则,系统中把对象看成是属性和对象的结合体,使对象能够集中而完整地描述一个具体事物。封装的信息隐蔽作用反映了事物的相对独立性,当我们从外部观察对象时,只需要了解对象所呈现的外部行为(即做什
13、么),而不必关心它的内部细节(即怎么做)。3 面向对象的基本概念面向对象的基本概念封装举例:电视机包括外形尺寸、分辨率、电压、电流等属性,具有打开、关闭、调谐频道、转换频道、设置图象等服务,封装意味着将这些属性和服务结合成一个不可分的整体,它对外有一个显示屏、插头和一些按钮等接口,用户通过这些接口使用电视机,而不关心其内部的实现细节。3 面向对象的基本概念面向对象的基本概念封装 与封装密切相关的概念是可见性,它是指对象的属性和服务允许对象外部存取和引用的程度。在软件上,封装要求对象以外的部分不能随意存取对象的内部数据(属性),从而有效地避免了外部错误对它的交叉感染,使软件错误能够局部化,大大减
展开阅读全文