- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2 章 面向对象的系统分析与设计方法
2.1 面向对象的基本思想和基本概念
2.2 面向对象的系统开发方法
返回主目录
2.1 面向对象的基本思想和基本概念
2.1.1 面向对象的基本思想
与传统的结构化程序设计方法用过程化的方式描述应用
系统不同,面向对象的方法认为,客观世界是由各种各样的
对象组成的,每个对象都有各自的内部状态和运动规律,不
同对象之间通过消息传送相互作用和联系就构成了各种不同
的系统。
采用对象的观点看待所要解决的问题,并将其抽象为系
统是极其自然与简单的,因为它符合人类的思维习惯,使得
应用系统更容易理解。同时,由于应用系统是由相互独立的
对象构成的,使得系统的修改可以局部化,因此系统更易于
维护。
2.1.2 对象
对象是客观世界中事物在计算机领域中的抽象,是一组
数据和施加于该组数据上的一组操作(行为)组成的集合体。
对象是面向对象方法的主体。当一个对象映射为软件实
现时由三个部分组成:
(1) 私有的数据结构。它用于描述对象的内部状态。
(2) 处理。也称为操作或方法,它施加于数据结构之上。
(3) 接口。这是对象可被共享的部分,消息通过接口调
用相应的操作。接口规定哪些操作是允许的。它不提供操作
是如何实现的信息。
C++语言中的对象由描述对象状态的数据结构和作用于这
个数据结构上的方法(或称为操作)构成,它们都可以分为
私有的和公有的两个部分,私有部分从对象的外部不可直接
访问,而公有部分可以由对象的外部访问。C++语言中对象之
间的相互联系和作用通过
对公有数据和方法(操作)的访问来实现。
例如对于某个人,它的状态可能是:
身高: 175 cm
年龄: 20
性别: 男
肤色: 黄色
它的操作可能是:
回答身高
回答年龄
回答性别
回答肤色
其它对象不能直接访问它的内部状态信息,只能通过调
用这些公共操作来访问该对象。
客观世界的同一对象在不同的应用系统中,由于考察对象的
角度不同,对其抽象的数据结构和操作都可能是不同的。例如对
于一个学生,在学籍管理系统与户籍管理系统两个不同的应用系
统中,抽象出的表示内部状态的数据结构和对数据结构进行的操
作都是不同的。因此,在对实际应用系统中的对象进行分析时,
应注意该系统的要求,区分哪些是该对象的本质特征。
2.1.3 类与实例
采用面向对象方法进行系统分析与设计时,对于一个具
体的系统而言,可能存在很多具有相同特征的对象。例如,
对于一个学籍管理系统,存在许多学生对象,它们具有相同
的结构特征和行为特征,只是表示内部状态的数据值不同。
为了描述这种相同结构特征和行为特征的对象,面向对象方
法引入了类的概念。这一点与人们在认识客观世界的事物时
所采取的分类思想相同。人们在认识事物时总是将具有相同
特征的事物归为一类,属于某类的一个事物具有该类事物的
共同特征。
类是对一组具有相同特征的对象的抽象描述,所有这些
对象都是这个类的实例。对于学籍管理系统,学生是一个
类,而一个具体的学生则是学生类的一个实例。
一个类的不同实例具有相同的操作或行为的集合和相同
的信息结构或属性的定义,但属性值可以不同;不同的实例
具有不同的对象标识。对于学生类中的每一个对象,描述它
们所使用的数据结构相同,但是其值不同。在程序设计语言
中,类是一种数据类型,而对象是该类型的变量,变量名即
是某个具体对象的标识。
因此,一个类的定义至少包含以下两个方面的描述:
(1) 该类所有实例的属性定义或结构的定义。
(2) 该类所有实例的操作(或行为)的定义。
在C++语言中,一个类的定义包含数据成员和函数成员两
部分内容。数据成员定义该类对象的属性,不同的对象属性
的值可以不同;函数成员定义了该类对象的操作。
在一个系统中,每一个对象均属于某个类,类是对象的
属性和操作的定义模板,而实例是某个具体的对象。
2.1.4 继承性
人们在对客观世界的事物进行描述时,经常采取分类的方
法。类是有层次的,即某个
您可能关注的文档
最近下载
- 湖南省名校联考联合体2025-2026学年高一上学期10月联考语文试卷含答案.pdf VIP
- 部分常用岩土物理力学参数经验数值.doc
- 中南大学网校马克思主义基本原理考试.doc VIP
- 浙江省精诚联盟2025-2026学年高一上学期10月联考生物试卷含答案.docx VIP
- 2025-2026学年广东省广州市第一中学高一上学期10月月考数学试卷含详解.docx VIP
- 抖音爸爸博主“新父职”的数字实践研究_.pdf VIP
- 演示文稿青春期生长发育.ppt VIP
- 2023年中南财经政法大学公共课《马克思主义基本原理概论》期末试卷B(有答案).docx VIP
- 2024-2025学年广东省珠海市文园中学九年级(下)开学物理试卷.docx VIP
- 保健品营销策划.pdf VIP
文档评论(0)