- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章面向对象软件开发基础
第四章 面向对象软件开发基础 合肥学院计算机系 吴晓琴 本章内容 4.1 面向对象技术基础 4.2 Java语言的面向对象特性 4.1 面向对象技术基础 4.1.1 面向对象的基本概念 面向对象的基本思想 面向对象是一种新兴的程序设计方法,或者是一种新的程序设计规范(paradigm),其基本思想是使用对象、类、继承、封装、消息等基本概念来进行程序设计。从现实世界中客观存在的事物(即对象)出发来构造软件系统,并且在系统构造中尽可能运用人类的自然思维方式。开发一个软件是为了解决某些问题,这些问题所涉及的业务范围称作该软件的问题域。其应用领域不仅仅是软件,还有计算机体系结构和人工智能等。 4.1.1 面向对象的基本概念 1. 对象的基本概念 对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。 主动对象是一组属性和一组服务的封装体,其中至少有一个服务不需要接收消息就能主动执行(称作主动服务)。 2. 类的基本概念?? ?类是具有相同属性和服务的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和服务说明两个主要部分。 3. 消息 消息就是向对象发出的服务请求,它应该包含下述信息:提供服务的对象标识、服务标识、输入信息和回答信息。服务通常被称为方法或函数。 4.1.2 面向对象的基本特征 1.封装性 封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义: ◇ 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位(即对象)。 ◇ 信息隐蔽,即尽可能隐蔽对象的内部细节,对外形成一个边界〔或者说形成一道屏障〕,只保留有限的对外接口使之与外部发生联系。 封装的原则在软件上的反映是:要求使对象以外的部分不能随意存取对象的内部数据(属性),从而有效的避免了外部错误对它的交叉感染,使软件错误能够局部化,大大减少查错和排错的难度。 4.1.2 面向对象的基本特征 2.继承性 特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。 一个类可以是多个一般类的特殊类,它从多个一般类中继承了属性与服务,这称为多继承。 在java语言中,通常我们称一般类为父类(superclass,超类),特殊类为子类(subclass)。 3.多态性 对象的多态性是指在一般类中定义的属性或服务被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。这使得同一个属性或服务在一般类及其各个特殊类中具有不同的语义。例如:几何图形的绘图方法,椭圆和多边形都是几何图的子类,其绘图方法功能不同。 4.1.3 面向对象程序设计方法 OOA-Object Oriented Analysis 面向对象的分析 OOD-Object Oriented Design 面向对象的设计 OOI-Object Oriented Implementation 面向对象的实现 面向对象程序设计方法 ①面向对象(Object Oriented):它是一种解决问题的方法或者观点,它认为自然界是由一组彼此相关并能相互通信的实体(对象)所组成。 ② 面向对象程序设计方法(OOP):它使用面向对象的观点来描述现实问题,然后用计算机语言来模仿并处理该问题的一种程序设计方法。 ③ 要求:描述或处理问题时应具有高度的概括、分类并对它抽象的能力,才能准确地描述某一实体;将所要处理的问题抽象为对象(数据与代码的集合) ④ 目的:实现软件设计的产业化,变手工作坊式编程为软件构件式工业化,达到快速高效编程。 4.2面向对象程序设计方法的编程语言 ① Smalltalk:由美国加州的Xeror公司于70年代初研制的纯OOP语言,适用于小型机; ② C++:是在面向过程程序设计方法基础上新增OOP成分,因而是一种混合型语言。其流行的原因归功于C语言的普及;但它具有与平台(CPU、OS类型)有关性。 ③ Java:由Sun公司于1995年发布,适用于Internet网开发和应用的纯OOP语言。 4.3、面向对象程序设计过程: 分析用户需求,从问题中抽取对象模型; 将模型细化,设计类,包括类的属性和类间相互关系,同时考察是否有可以直接引用的已有类或部件 选定面向对象的编程语言,具体编码实现上一阶段类的设计,并在开发过程中引入测试,完善整个解决方案。 4.4、面向对象程序设计方法的编程优点 可重用性 是面向对象软件开发的核心思路。抽象、封装、继承与派生、多态性围绕可重用性核心。 应用
您可能关注的文档
最近下载
- 5年(2019-2023)中考1年模拟英语真题分项汇编(全国)专题06 阅读理解之说明文(解析版).pdf VIP
- 《会计基础》教案 第2课 会计基本假设、会计基础、会计信息质量要求和会计准则体系.doc
- 4.《望海潮》《扬州慢》比较阅读教学设计2023-2024学年统编版高中语文选择性必修下册.docx
- 熔化焊接与热切割安全技术实际操作考试.docx
- 中图版地理七下期中复习提纲.pdf VIP
- 部编版语文二年级下册全册优秀ppt课件.pptx
- 马铃薯种传土传病害.ppt VIP
- 生猪屠宰兽医卫生检验人员考试题库5份(含答案).docx
- 四川省2021年10月自考03331公共事业管理试题.doc
- 常用玻璃量器检定培训课件.pptx
文档评论(0)