面向对象方法学(课堂PPT)
合集下载
面向对象方法学概述精品PPT课件
注意:UML是一种语言规范而不是一种建模方法
用面向对象方法开发软件,通常需要建立3种形式的模 型:描述系统数据结构的对象模型,描述系统控制结构 的动态模型、描述系统功能的功能模型。 在整个开发过程中,3种模型一直都在发展完善。在面向 对象分析中,构造出完全独立于实现的应用域模型;在 面向对象设计过程中,把求解域的结构逐渐加入到模型 中;在实现阶段,把应用域和求解域的结构编成代码并 进行严格的测试验证
面向对象分析设计方法(OOAD): ▪ 兴起于20世纪80年代,从20世纪90年代起至今它已
经在分析设计领域占据了无可争议的主流地位 ▪ 1997年11月,UML被国际对象管理组织(OGM)采
纳,此后UML成了OOAD建模语言的国际标准。 ▪ UML对于OOAD中的语义、图形表示法和使用规则做
了完整而详细的定义。其建模能力超过了以往任何 OOAD方法,当然复杂性也随之膨胀。 ▪ 真正使UML流行的是Rational公司基于UML的建模 工具Rose。
每次重复都会增加或明确一些目标系统的性质,但却不是对先前工 作结果的本质性改动,这样就减少了不一致性,降低了出错的可能。 P22喷泉模型
面向对象方法的特点
1. 通用组织方法 2. 抽象 3. 封装或信息隐蔽 4. 继承 5. 多态 6. 消息通信 7. 关联 8. 复用
1. 通用组织方法
通用组织方法用于协助组织信息系统模型以及最终编写的软件。包 括: 对象及其属性或者特征。 整体和部分(is a part of)。 类和成员(is a member of) 。 2. 抽象 忽略问题域的无关部分而集中考虑关键部分的原则
第一章 面向对象方法学引论
传统方法学的缺点
僵化的瀑布模型 瀑布模型意味着生命周期各阶段间存在着严
用面向对象方法开发软件,通常需要建立3种形式的模 型:描述系统数据结构的对象模型,描述系统控制结构 的动态模型、描述系统功能的功能模型。 在整个开发过程中,3种模型一直都在发展完善。在面向 对象分析中,构造出完全独立于实现的应用域模型;在 面向对象设计过程中,把求解域的结构逐渐加入到模型 中;在实现阶段,把应用域和求解域的结构编成代码并 进行严格的测试验证
面向对象分析设计方法(OOAD): ▪ 兴起于20世纪80年代,从20世纪90年代起至今它已
经在分析设计领域占据了无可争议的主流地位 ▪ 1997年11月,UML被国际对象管理组织(OGM)采
纳,此后UML成了OOAD建模语言的国际标准。 ▪ UML对于OOAD中的语义、图形表示法和使用规则做
了完整而详细的定义。其建模能力超过了以往任何 OOAD方法,当然复杂性也随之膨胀。 ▪ 真正使UML流行的是Rational公司基于UML的建模 工具Rose。
每次重复都会增加或明确一些目标系统的性质,但却不是对先前工 作结果的本质性改动,这样就减少了不一致性,降低了出错的可能。 P22喷泉模型
面向对象方法的特点
1. 通用组织方法 2. 抽象 3. 封装或信息隐蔽 4. 继承 5. 多态 6. 消息通信 7. 关联 8. 复用
1. 通用组织方法
通用组织方法用于协助组织信息系统模型以及最终编写的软件。包 括: 对象及其属性或者特征。 整体和部分(is a part of)。 类和成员(is a member of) 。 2. 抽象 忽略问题域的无关部分而集中考虑关键部分的原则
第一章 面向对象方法学引论
传统方法学的缺点
僵化的瀑布模型 瀑布模型意味着生命周期各阶段间存在着严
第三篇 面向对象方法学PPT课件
9
的方法学,任何方 法学都有其局限性,所以软件开发人员大可不 必拘泥于某种特定的方法学。
10
第6章 面向对象方法学导论
面向对象程序设计实例 现向对象方法学概述 面向对象方法学的主要优点 面向对象的概念
11
一个简单的图形程序的需求
在显示器荧光屏上圆心坐标为(100,100)的 位置画一个半径为40的圆,在圆心坐标为 (200,300)的位置画一个半径为20的圆, 在圆心坐标为(400,150)的位置画一条弧, 弧的起始角度为30°,结束角度为120°,半径 为50.
14
用面向对象的方式怎样解决问题?
本问题中涉及两类实体(对象):圆和弧
圆类的两个实例、弧类的一个实例(所谓实例
即具体的对象)
弧
圆 圆心坐标 半径 可见性 显示() 隐藏
圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
15
6.2 设计类等级
这个简单的图形程序需要使用圆类和弧类这两
类对象,也就是说,我们把该程序中的对象划
第三篇 面向对象方法学
所谓方法学是指组织软件生产过程的一 系列方法、技术和规范。 是软件开发者长年失败和成功经验的理 论性总结。
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
面向对象方法学的基本思想
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
的方法学,任何方 法学都有其局限性,所以软件开发人员大可不 必拘泥于某种特定的方法学。
10
第6章 面向对象方法学导论
面向对象程序设计实例 现向对象方法学概述 面向对象方法学的主要优点 面向对象的概念
11
一个简单的图形程序的需求
在显示器荧光屏上圆心坐标为(100,100)的 位置画一个半径为40的圆,在圆心坐标为 (200,300)的位置画一个半径为20的圆, 在圆心坐标为(400,150)的位置画一条弧, 弧的起始角度为30°,结束角度为120°,半径 为50.
14
用面向对象的方式怎样解决问题?
本问题中涉及两类实体(对象):圆和弧
圆类的两个实例、弧类的一个实例(所谓实例
即具体的对象)
弧
圆 圆心坐标 半径 可见性 显示() 隐藏
圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
15
6.2 设计类等级
这个简单的图形程序需要使用圆类和弧类这两
类对象,也就是说,我们把该程序中的对象划
第三篇 面向对象方法学
所谓方法学是指组织软件生产过程的一 系列方法、技术和规范。 是软件开发者长年失败和成功经验的理 论性总结。
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
面向对象方法学的基本思想
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
面向对象方法概述精品PPT课件
杭州人 Attributes 杭州人 Methods
张山 (instance)
Class 中国人 张山的 Attributes
李士 (instance) Class 杭州人 中国人李士的 Attributes 杭州人李士的 Attributes
则可以认为这个软件系统是面向对象的。
1.3.5 面向对象方法及其工作模型
面向对象的方法的代表性成果有: 1、B.Henderson-sellers 和 J.m.Edwards提出的面向对象软件 生存期喷泉模型及面向对象的系统开发方法。 2、G.Booch提出的面向对象的开发方法。 3、P.Coad和E.Yourd提出的OOA和OOD法。 4、J. Rumbaugh等人提出的对象建模技术(OMT)。 5、Jacobson 提出的面向对象的软件工程(OOSE)。 6、G.booch J.Rumbough Jacobson等人在Booch方法、OMT 和OOSE的基础上推出了统一建模语言UML。
模型分类续
2、OOD 法 在需求分析的基础上,进一步解决“如何作”的问题,
OOD 法也分为概要设计和详细设计。
概要设计:细化对象行为,添加新对象,认定类,组类 库,确定外部接口及主要数据结构
详细设计:加细对象描述
3、OOP 法 使用面向对象的程序设计语言,如C++进行程序设计。 Coad和Yourdon给出一个面向对象的定义: 面向对象=对象+类+继承+消息 ,
由于对象是类的实例,在进行分析和设计时,通常把注 意力集中在类上,而不是具体的对象上。
6.1.2 面向对象的概念
对象和类的描述
对象和类的描述
对象和类一般采用“对象图” 和 “类图” 来描述。
张山 (instance)
Class 中国人 张山的 Attributes
李士 (instance) Class 杭州人 中国人李士的 Attributes 杭州人李士的 Attributes
则可以认为这个软件系统是面向对象的。
1.3.5 面向对象方法及其工作模型
面向对象的方法的代表性成果有: 1、B.Henderson-sellers 和 J.m.Edwards提出的面向对象软件 生存期喷泉模型及面向对象的系统开发方法。 2、G.Booch提出的面向对象的开发方法。 3、P.Coad和E.Yourd提出的OOA和OOD法。 4、J. Rumbaugh等人提出的对象建模技术(OMT)。 5、Jacobson 提出的面向对象的软件工程(OOSE)。 6、G.booch J.Rumbough Jacobson等人在Booch方法、OMT 和OOSE的基础上推出了统一建模语言UML。
模型分类续
2、OOD 法 在需求分析的基础上,进一步解决“如何作”的问题,
OOD 法也分为概要设计和详细设计。
概要设计:细化对象行为,添加新对象,认定类,组类 库,确定外部接口及主要数据结构
详细设计:加细对象描述
3、OOP 法 使用面向对象的程序设计语言,如C++进行程序设计。 Coad和Yourdon给出一个面向对象的定义: 面向对象=对象+类+继承+消息 ,
由于对象是类的实例,在进行分析和设计时,通常把注 意力集中在类上,而不是具体的对象上。
6.1.2 面向对象的概念
对象和类的描述
对象和类的描述
对象和类一般采用“对象图” 和 “类图” 来描述。
第9章 面向对象方法学引论PPT课件
7
4 较易开发大型软件产品 用面向对象方法学开发软件时,构成
软件系统的每个对象就像一个微型程序, 有自己的数据、操作、功能和用途。一 个大型软件产品分解成一系列本质上互 相独立的小产品来处理,这不仅降低了 开发的技术难度,而且也使得对开发工 作的管理变得容易。因此,面向对象范 型优于结构化范对象的概念
9.2.1对象 ▪ 可以是具体的物理实体的抽象 ▪ 可以是人为的概念 ▪ 可以是任何有明确边界和意义的东西 例如:一名职工、一家公司、一个窗口、 一座图书馆、一本图书、贷款、 借款等等。
10
1 对象的形象表示
❖ 一个对象好像一个黑盒子,表示它内部的数 据和实现各个操作的代码及局部数据,都被 封装在这个黑盒子内部,在外部是看不见的, 更不能从外部去访问或修改这些数据代码。
5.属性:是类中所定义的数据,是对客观实体 所具有的性质抽象。半径、圆心、颜色
6.封装:是把某个事务包起来,使外界不知道 该事物的具体内容。封装的条件:
(1)有一个清晰的边界
14
(2)有确定的接口
(3)受保护的内部实现
7.继承
(1)继承是子类自动地共享基类中定义的数据和 方法的机制,其特性是:一个类的上层可以有 父类,下层可以有子类。
种抽象反映了系统保存有关这个东西的 信息或与它交互的能力 定义3:对象::=<ID,MS,DS,MI> 名字 操作集合 数据结构 对外接口
12
3.对象的特点
(1)以数据为中心
(2)对象是主动的
(3)实现了数据封装
(4)本质上具有并行性
(5)模块独立性好
4.其他概念
(1)类:是对具有相同数据和相同操作的一组相 似对象的定义。人(黄皮肤,黑头发,黑眼睛)
4 较易开发大型软件产品 用面向对象方法学开发软件时,构成
软件系统的每个对象就像一个微型程序, 有自己的数据、操作、功能和用途。一 个大型软件产品分解成一系列本质上互 相独立的小产品来处理,这不仅降低了 开发的技术难度,而且也使得对开发工 作的管理变得容易。因此,面向对象范 型优于结构化范对象的概念
9.2.1对象 ▪ 可以是具体的物理实体的抽象 ▪ 可以是人为的概念 ▪ 可以是任何有明确边界和意义的东西 例如:一名职工、一家公司、一个窗口、 一座图书馆、一本图书、贷款、 借款等等。
10
1 对象的形象表示
❖ 一个对象好像一个黑盒子,表示它内部的数 据和实现各个操作的代码及局部数据,都被 封装在这个黑盒子内部,在外部是看不见的, 更不能从外部去访问或修改这些数据代码。
5.属性:是类中所定义的数据,是对客观实体 所具有的性质抽象。半径、圆心、颜色
6.封装:是把某个事务包起来,使外界不知道 该事物的具体内容。封装的条件:
(1)有一个清晰的边界
14
(2)有确定的接口
(3)受保护的内部实现
7.继承
(1)继承是子类自动地共享基类中定义的数据和 方法的机制,其特性是:一个类的上层可以有 父类,下层可以有子类。
种抽象反映了系统保存有关这个东西的 信息或与它交互的能力 定义3:对象::=<ID,MS,DS,MI> 名字 操作集合 数据结构 对外接口
12
3.对象的特点
(1)以数据为中心
(2)对象是主动的
(3)实现了数据封装
(4)本质上具有并行性
(5)模块独立性好
4.其他概念
(1)类:是对具有相同数据和相同操作的一组相 似对象的定义。人(黄皮肤,黑头发,黑眼睛)
第三篇 面向对象方法学PPT课件
4
结构化方法学与面向对象方法学
假如数据结构复杂且变换并不多,那么 如以过程主导分析和设计,一旦有系统 变更就会给下游开发带来极大混乱。
由于对过程的理解不同,面向过程的功 能细分所分割出的功能模块有时会因人 而异。而面向对象的对象细分,从同一 问题领域的对象出发,不同人得出相同 结论的比率较高。
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
在这种层次结构中,下层的派生类 自动具有和上层基类相同的特定 (包括数据和操作),这种现象称 为继承。
(3)按照子类与父类的关系,把若干个 对象类组织成一个层次结构的系统(类 等级)。
23
面向对象方法学的要点
(4)对象之间仅能通过传递消息互相通信。
“面向对象=对象+类+继承+消息”
24
面向对象方法学过程
一般说来,使用面向对象方法学开发软件时, 工作重点应该放在生命周期中的分析阶段。这 种方法在开发的早期阶段定义了一系列面向问 题的对象,并且在整个开发过程中不断充实和 扩充这些对象。
25
面向对象方法学过程
迭代是软件开发过程中普遍存在的 一种内在属性。经验表明,软件过 程各个阶段之间的迭代或一个阶段 内各个工作步骤之间的迭代,在面 向对象范型中比在结构化范型中更 常见,也更容易实现。
喷泉模型是典型的面向对象生命周 期模型。
26
6.3 面向对象方法学的主要优点
与人类习惯的思维方法一致 面向对象的软件开发过程从始至终都围绕着建
结构化方法学与面向对象方法学
假如数据结构复杂且变换并不多,那么 如以过程主导分析和设计,一旦有系统 变更就会给下游开发带来极大混乱。
由于对过程的理解不同,面向过程的功 能细分所分割出的功能模块有时会因人 而异。而面向对象的对象细分,从同一 问题领域的对象出发,不同人得出相同 结论的比率较高。
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
在这种层次结构中,下层的派生类 自动具有和上层基类相同的特定 (包括数据和操作),这种现象称 为继承。
(3)按照子类与父类的关系,把若干个 对象类组织成一个层次结构的系统(类 等级)。
23
面向对象方法学的要点
(4)对象之间仅能通过传递消息互相通信。
“面向对象=对象+类+继承+消息”
24
面向对象方法学过程
一般说来,使用面向对象方法学开发软件时, 工作重点应该放在生命周期中的分析阶段。这 种方法在开发的早期阶段定义了一系列面向问 题的对象,并且在整个开发过程中不断充实和 扩充这些对象。
25
面向对象方法学过程
迭代是软件开发过程中普遍存在的 一种内在属性。经验表明,软件过 程各个阶段之间的迭代或一个阶段 内各个工作步骤之间的迭代,在面 向对象范型中比在结构化范型中更 常见,也更容易实现。
喷泉模型是典型的面向对象生命周 期模型。
26
6.3 面向对象方法学的主要优点
与人类习惯的思维方法一致 面向对象的软件开发过程从始至终都围绕着建
面向对象方法学-PPT
在面向对象得软件技术中,“类”就就是对具有相 同数据与相同操作得一组相似对象得定义,也就就是 说,类就是对具有相同属性与行为得一个或多个对象 得描述,通常在这种描述中也包括对怎样创建该类得 新对象得说明。
以上先详细地阐述了对象得定义,然后在此基础上 定义了类。也可以先定义类再定义对象,例如,可以像 下面这样定义类与对象: 类就是支持继承得抽象数据 类型,而对象就就是类得实例。
由于客观世界中得实体通常都既具有静态得属性,又 具有动态得行为,因此,面向对象方法学中得对象就是 由描述该对象属性得数据以及可以对这些数据施加 得所有操作封装在一起构成得统一体。对象可以作 得操作表示它得动态行为,在面向对象分析与面向对 象设计中,通常把对象得操作称为服务或方法。
1、 对象得形象表示
面向对象方法学得优点
1、 与人类习惯得思维方法一致 传统得程序设计技术就是面向过程得设计方法,这
种方法以算法为核心,把数据与过程作为相互独立得 部分,数据代表问题空间中得客体,程序代码则用于处 理这些数据。
2、 稳定性好
传统得软件开发方法以算法为核心,开发过程基于 功能分析与功能分解。用传统方法所建立起来得软 件系统得结构紧密依赖于系统所要完成得功能,当功 能需求发生变化时将引起软件结构得整体修改。事 实上,用户需求变化大部分就是针对功能得,因此,这样 得软件系统就是不稳定得。
(2)类(class)
现实世界中存在得客观事物有些就是彼此相似得, 例如,张三、李四、王五……虽说每个人职业、性格、 爱好、特长等等各有不同,但就是,她们得基本特征就 是相似得,都就是黄皮肤、黑头发、黑眼睛,于就是人 们把她们统称为“中国人”。人类习惯于把有相似 特征得事物归为一类,分类就是人类认识客观世界得 基本方法。
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在面向对象的软件技术中,“类”就是对具有相 同数据和相同操作的一组相似对象的定义,也就是 说,类是对具有相同属性和行为的一个或多个对象 的描述,通常在这种描述中也包括对怎样创建该类 的新对象的说明。
以上先详细地阐述了对象的定义,然后在此基础 上定义了类。也可以先定义类再定义对象,例如, 可以像下面这样定义类和对象: 类是支持继承的抽 象数据类型,而对象就是类的实例。
5. 可维护性好
用传统方法和面向过程语言开发出来的软件很难 维护,是长期困扰人们的一个严重问题,是软件危 机的突出表现。
2、 面向对象的概念
(1) 对象
在应用领域中有意义的、与所要解决的问题有关 系的任何事物都可以作为对象,它既可以是具体的 物理实体的抽象,也可以是人为的概念,或者是任 何有明确边界和意义的东西。,对象是对问题域中 某个实体的抽象,设立某个对象就反映了软件系统 具有保存有关它的信息并且与它进行交互的能力。
为有助于读者理解对象的概念,下图形象地描绘了 具有3个操作的对象。
对象的形象表示
一个对象很像一台录音机。当在软件中使用一个
对象的时候,只能通过对象与外界的界面来操作它。 对象与外界的界面也就是该对象向公众开放的操作。 使用对象向公众开放的操作就好像使用录音机的按 键,只须知道该操作的名字(好像录音机的按键名)和 所需要的参数(提供附加信息或设置状态,根本无须 知道实现这些操作的方法。事实上,实现对象操作 的代码和数据是隐藏在对象内部的,一个对象好像 是一个黑盒子,表示它内部状态的数据和实现各个 操作的代码及局部数据,都被封装在这个黑盒子内 部,在外面是看不见的,更不能从外面去访问或修 改这些数据或代码。
面向对象方法学
1 面向对象方法学概述 2 面向对象的概念 3 面向对象建模 4 对象模型 1. 5 动态模型点和基本原则,是尽可能 模拟人类习惯的思维方式,使开发软件的方法与过 程尽可能接近人类认识世界解决问题的方法与过程, 也就是使描述问题的问题空间(也称为问题域)与实现 解法的解空间(也称为求解域)在结构上尽可能一致。
(2)类(class)
现实世界中存在的客观事物有些是彼此相似的, 例如,张三、李四、王五……虽说每个人职业、性 格、爱好、特长等等各有不同,但是,他们的基本 特征是相似的,都是黄皮肤、黑头发、黑眼睛,于 是人们把他们统称为“中国人”。人类习惯于把有 相似特征的事物归为一类,分类是人类认识客观世 界的基本方法。
(4) 对象彼此之间仅能通过传递消息互相联系。对象 与传统的数据有本质区别,它不是被动地等待外界 对它施加操作,相反,它是进行处理的主体,必须 发消息请求它执行它的某个操作,处理它的私有数 据,而不能从外界直接对它的私有数据进行操作。 也就是说,一切局部于该对象的私有信息,都被封 装在该对象类的定义中,就好像装在一个不透明的 黑盒子中一样,在外界是看不见的,更不能直接使 用,这就是“封装性”。
面向对象方法学的优点
1. 与人类习惯的思维方法一致 传统的程序设计技术是面向过程的设计方法,这
种方法以算法为核心,把数据和过程作为相互独立 的部分,数据代表问题空间中的客体,程序代码则 用于处理这些数据。
2. 稳定性好
传统的软件开发方法以算法为核心,开发过程基于 功能分析和功能分解。用传统方法所建立起来的软 件系统的结构紧密依赖于系统所要完成的功能,当 功能需求发生变化时将引起软件结构的整体修改。 事实上,用户需求变化大部分是针对功能的,因此, 这样的软件系统是不稳定的。
由此可见,面向对象方法用对象分解取代了传统方 法的功能分解。
(2) 把所有对象都划分成各种对象类(简称为类, class),每个对象类都定义了一组数据和一组方法。 数据用于表示对象的静态属性,是对象的状态信息。 因此,每当建立该对象类的一个新实例时,就按照 类中对数据的定义为这个新对象生成一组专用的数 据,以便描述该对象独特的属性值。
3. 可重用性好
用已有的零部件装配新的产品,是典型的重用技 术,例如,可以用已有的预制件建筑一幢结构和外 形都不同于从前的新大楼。重用是提高生产率的最 主要的方法。
4. 较易开发大型软件产品
在开发大型软件产品时,组织开发人员的方法不 恰当往往是出现问题的主要原因。用面向对象方法 学开发软件时,构成软件系统的每个对象就像一个 微型程序,有自己的数据、操作、功能和用途,因 此,可以把一个大型软件产品分解成一系列本质上 相互独立的小产品来处理,这就不仅降低了开发的 技术难度,而且也使得对开发工作的管理变得容易 多了。这就是为什么对于大型软件产品来说,面向 对象范型优于结构化范型的原因之一。
概括地说,面向对象方法具有下述4个要点: (1) 认为客观世界是由各种对象组成的,任何事物都 是对象,复杂的对象可以由比较简单的对象以某种 方式组合而成。按照这种观点,可以认为整个世界 就是一个最复杂的对象。因此,面向对象的软件系 统是由对象组成的,软件中的任何元素都是对象, 复杂的软件对象由比较简单的对象组合而成。
由于客观世界中的实体通常都既具有静态的属性, 又具有动态的行为,因此,面向对象方法学中的对 象是由描述该对象属性的数据以及可以对这些数据 施加的所有操作封装在一起构成的统一体。对象可 以作的操作表示它的动态行为,在面向对象分析和 面向对象设计中,通常把对象的操作称为服务或方 法。
1. 对象的形象表示
类中定义的方法,是允许施加于该类对象上的操作, 是该类所有对象共享的,并不需要为每个对象都复 制操作的代码。
(3) 按照子类(或称为派生类)与父类(或称为基类)的关 系,把若干个对象类组成一个层次结构的系统(也称 为类等级)。在这种层次结构中,通常下层的派生类 具有和上层的基类相同的特性(包括数据和方法),这 种现象称为继承(inheritance)。但是,如果在派生类 中对某些特性又做了重新描述,则在派生类中的这 些特性将以新描述为准,也就是说,低层的特性将 屏蔽高层的同名特性。