程序设计技术 第三章 面向对象程序设计思想.ppt
合集下载
第3章:面向对象编程基础
3.2 Java的类和对象
(2) 成员变量
成员变量定义的一般形式如下: [修饰字] 类型 变量名; 其中,修饰字可以空缺,修饰字用于对成员变量限制其访问权限,成员 的访问权限有4种:private、protected、public 和友好的(后面详细 介绍)。 变量的类型可以是任何数据类型,变量的名字是一个标识符。Java 中成 员变量的名字可以与类的方法的名字相同。 成员变量对类内定义的方法都有效。类的方法也可定义变量,这种变量 称为局部变量,局部变量只在定义它的方法中有效。
3.1 面向对象的基本概念
3. 消息(方法调用的信息)
对象之间的交互通过相互发送消息(Message )实现。 当对象A希望对象B执行B的一个方法时,用 对象A发送消息给对象B来实现。 消息发送时,如果还需要其他参数,消息可带 参数一起发送。
3.1 面向对象的基本概念
4. 类(对象的类属/类别)
程序设计中利用抽象,在面向过程阶段,系统按函数和 模块进行设计。 在面向对象阶段,利用抽象按类设计。类是目前支持抽 象的最好工具。
3.1 面向对象的基本概念
2. 对象: (万物皆为对象)
对象有状态(属性)、行为(操作)和名称( 对象名) 对象的名称用于程序引用对象,对象的成员变 量,用于存储对象的状态信息,对象的方法用 于描述对象的行为
练习题
【真题练习】参照以下Java代码,以下四个叙述中最确 切的是( )
class A{ int x; static int y; void fac(String s){ Syatem. out. println("字符串:"+s); } } A.x、y和s都是成员变量 B.x是实例变量、y是类变量、s是局部变量 C.x和y是实例变量、s是参数 D.x、y和s都是实例变量
面向对象程序设计基础ppt课件
软件对象通过相互间传递消息来相互作用和通信,一个消息由三部分组成:
1. 发送消息的对象
2. 接收发送消息
(调用发送对
第7页
对象 A
对象B
2021/3/30
面向对象的概念
❖ 一个例子
class Hello {
变量
方法showString()
private String s;
第3章 面向对象程序设计基础
;.
1
面向对象的概念
❖ 所谓面向对象的方法,就是使我们分析、设计和实现一个系统的方法尽可能自然地使用我们 在生活中用到的以对象为中心的思想,分析、认识、设计一个系统的方法。包括: ➢ 面向对象分析(OOA, Object-Oriented Analysis) ➢ 面向对象设计(OOD, Object-Oriented Design) ➢ 面向对象程序设计(OOP, Object-Oriented Program)
❖ 面向对象技术主要围绕以下几个概念讨论: ➢对象的封装(抽象数据类型)、类与对象、 继承性、多态性。
第2页
2021/3/30
面向对象的概念
❖ 对象(Object) 有两个层次的概念: ➢ 现实生活中对象指的是客观世界的实体,它由状态(State)和行为(Behavior)构成 ; ➢ 程序中对象是现实世界对象的模型,是一组变量和相关方法的集合。变量 (Variables)表示现实对象的状态,方法(Methods)表现现实世界对象的行为,这些变 量和方法叫做这个对象的成员(Member)。
变量
第3页
方法
2021/3/30
面向对象的概念
可将现实生活中的对象经过抽象,映射为 程序中的对象。对象在程序中通过一种抽象 数据类型来描述,就称为类(Class)。
第3章-面向对象程序设计(上)ppt课件(全)
面向对象的基本概念
❖ 对象(Object)是一个应用系统中用来描述客观 事物的实体,是具有特定属性(数据)和行为 (方法)的基本运行单位,是类的一个特定状态 下的实例。
❖ 类(Class)是Java代码的基本组织模块,是用 以描述一组具有共同属性和行为的对象的基 本原型,是对这组对象的概括、归纳与抽象 表达,它定义了本类对象所应拥有的状态属 性集及操作这组属性的行为方法集。
也可以一步完成,即:
类名称 对象变量 = new 类名称();
实例化对象(续)
❖ 一旦一个类的实例化对象产生,就可以通过该对象 访问类中定义的成员了。通过对象访问成员的基本 结构如下:
对象变量.属性 = 值; 对象变量.方法();
3.2 方法
任务2--Leabharlann 方法的定义【任务内容】给任务1中的媒体播放器类增加控制方 法
❖ JAVA的类由类的声明与类体两部分组成。
1、类的声明用来指定该类的访问修饰符、类的
名称、父类名称及实现接口等属性。声明类的完整 形式为: [public][abstract|final] class <类名> [extends<基类名> ]
[implements <接口列表>]
类名应该能够描述出类的 特征或作用,类名的第一 个字母通常要大写,如果 类名由多个单词组成,则 每一单词的首字母一般都
【范例 3-1】 设计一个媒体播放器类
class MediaPlayer{ //音乐文件路径 public String musicFile; //播放器音量,范围:0(静音)~100 public int soundLevel; //播放器状态 public boolean isPlaying;
第三章 面向对象的思想PPT课件
5
201 0
CS&T Information Course
什么是面向对象
青椒炒牛肉
• 青椒
數量:500 g
处理:用刀切成细丝过油
先定好参与这件事的物品有哪些 (这些物品叫做 “对象”)
• 牛肉 數量:300 g 处理:切丁,用酱油、酒、 黑醋腌制
• 芡汁 製作:淀粉調上適量的水 芶芡:將芡汁倒入锅中
再定义这些物品所需的数量及行为 (这些数量及行为叫做 “属性”与“方法”)
接下来就可用物品间的互动行为 来描述整件事情是如何发生的。
• 青椒处理好、牛肉处理好、芡汁 •製作好,放入锅中快炒 1 分半後
(这部份的描述称为“主程序”)
•用芡汁芶芡即可。
6
201 0
对象观
• 什么是对象? • 对象由什么组成? • 对象有什么特性?
动物类
汽车类
13
201 0
什么是类
CS&T Information Course
• 类描述了一组有相同特性(属性)和相同 行为(方法)的对象。
• 类是现实世界中实体的抽象集合,是封装 了数据和操作的复杂的抽象数据类型。
14
201
0
类和对象
• 汽车类有些共同的状态(汽缸排 气量,排档数,颜色,轮胎 数……)和行为(换档,开灯, 开冷气……),但每一台汽车个 别的状态及方法可不同于且独立 于其他汽车 。
加速、刹车、换挡… 入库、库、盘点…
国家 人
经济状况、人口、地理位 置…发展经济、战争、谈 判…
五官、肤色、民族…
发展经济、战争、谈 判…
运动、工作、学习…
12
201 0
类 (class)
第3章面向对象程序设计基础精品PPT课件
▪ 在类声明之后,一对大括号括起来的部分称为类体。 类体中通常包括两部分内容,一是变量的声明,二 是方法的定义。其中,类中声明的变量又称为成员 变量或域变量,用于描述该类对象的属性;类中定 义的方法称为成员方法,成员方法用于描述该类对 象的行为。
3.2.2案例2:成员变量
▪ 类中声明的变量称为成员变量,成员变量声 明的一般语法格式如下:
▪ 面向对象程序设计方法以客观世界存在的事物为基础,采用 人类自然界思维模式,对问题(软件系统)进行抽象,从而构 造软件系统。面向对象程序设计的主要特点包括封装、继承 和多态。
▪ 1.封装 ▪ 所谓封装是指将数据和对数据的操作处理放在一起,封装是
面向对象程序设计的核心思想之一。其优势在于:一是信息 的隐藏;二是提高程序的可维护性 。 ▪ 2.继承 ▪ 继承是根据已有类创建新类的一种方法,也是面向对象程序 设计体现代码复用的关键特性。 ▪ 3.多态性 ▪ 所谓多态性是指使用相同接口完成不同操作或操作不同类型 数据,它是面向对象程序设计另一个重要特征。
3.2 类与对象
▪ 类和对象是面向对象程序设计最重要的两个概念。 类是一种数据类型,每个类都有一个特定的数据结 构,用于描述一类事物(对象)共有的属性和行为。 面向对象程序是由类构成的,面向对象编程的实质 就是类设计的过程。对象是类的一个特定实例,类 是创建对象的模型。对象的属性通过类中成员变量 来描述,对象的行为通过类中成员方法来描述,通 过成员方法对变量的操作实现软件系统功能。
▪ 例如: ▪ public class Hello //声明一个公共类Hello ▪ class MyFrame extends JFrame //声明类MyFrame
继承JFrame类 ▪ class MyThread implements Runnable //声明类
3.2.2案例2:成员变量
▪ 类中声明的变量称为成员变量,成员变量声 明的一般语法格式如下:
▪ 面向对象程序设计方法以客观世界存在的事物为基础,采用 人类自然界思维模式,对问题(软件系统)进行抽象,从而构 造软件系统。面向对象程序设计的主要特点包括封装、继承 和多态。
▪ 1.封装 ▪ 所谓封装是指将数据和对数据的操作处理放在一起,封装是
面向对象程序设计的核心思想之一。其优势在于:一是信息 的隐藏;二是提高程序的可维护性 。 ▪ 2.继承 ▪ 继承是根据已有类创建新类的一种方法,也是面向对象程序 设计体现代码复用的关键特性。 ▪ 3.多态性 ▪ 所谓多态性是指使用相同接口完成不同操作或操作不同类型 数据,它是面向对象程序设计另一个重要特征。
3.2 类与对象
▪ 类和对象是面向对象程序设计最重要的两个概念。 类是一种数据类型,每个类都有一个特定的数据结 构,用于描述一类事物(对象)共有的属性和行为。 面向对象程序是由类构成的,面向对象编程的实质 就是类设计的过程。对象是类的一个特定实例,类 是创建对象的模型。对象的属性通过类中成员变量 来描述,对象的行为通过类中成员方法来描述,通 过成员方法对变量的操作实现软件系统功能。
▪ 例如: ▪ public class Hello //声明一个公共类Hello ▪ class MyFrame extends JFrame //声明类MyFrame
继承JFrame类 ▪ class MyThread implements Runnable //声明类
第三章面向对象上PPT教学课件
}
2020/12/11
6
cont.
public class Test{ public static void main(String[] args) { Rectangle rect1=new Rectangle(); rect1.length = 10; rect1.width = 5; System.out.println(“方形的周长为 ”+rect1.perimeter()); System.out.println(“长方形的面积为 ”+rect1.area()); }
2020/12/11
16
对象的产生和使用
对象的创建 通过new操作符创建一个对象实例 例如: Car c1 = new Car(); 对象的引用和对象是两个不同的概念: 对象的引用变量存储了对象的地址.
2020/12/11
17
对象的构造过程
为对象开辟空间,并对对象的成员变量进行 缺省的初始化;
…(statements;) //方法体:方法的内容 }
[public | protected | private ] [static] [final | abstract] [native] [synchronized]
返回类型可以是任意的Java数据类型,当一个方法不需要 返回值时,返回类型为void。
}
2020/12/11
4
面向对象的思想 :
1. 一个长方形可以看成是一个长方形对象 2. 一个长方形对象有两个状态(长和宽),两
种行为(求周长和求面积) 3. 将所有长方形的共性抽取出来,设计一个类 4. 通过长方形对象的行为,就可以求出某个具
体长方形对象的周长和面积
2020/12/11
2020/12/11
6
cont.
public class Test{ public static void main(String[] args) { Rectangle rect1=new Rectangle(); rect1.length = 10; rect1.width = 5; System.out.println(“方形的周长为 ”+rect1.perimeter()); System.out.println(“长方形的面积为 ”+rect1.area()); }
2020/12/11
16
对象的产生和使用
对象的创建 通过new操作符创建一个对象实例 例如: Car c1 = new Car(); 对象的引用和对象是两个不同的概念: 对象的引用变量存储了对象的地址.
2020/12/11
17
对象的构造过程
为对象开辟空间,并对对象的成员变量进行 缺省的初始化;
…(statements;) //方法体:方法的内容 }
[public | protected | private ] [static] [final | abstract] [native] [synchronized]
返回类型可以是任意的Java数据类型,当一个方法不需要 返回值时,返回类型为void。
}
2020/12/11
4
面向对象的思想 :
1. 一个长方形可以看成是一个长方形对象 2. 一个长方形对象有两个状态(长和宽),两
种行为(求周长和求面积) 3. 将所有长方形的共性抽取出来,设计一个类 4. 通过长方形对象的行为,就可以求出某个具
体长方形对象的周长和面积
2020/12/11
《面向对象程序设计的基本知识》ppt课件1
§1.3 面向对象程序设计的 特性
1.封装性 面向对象程序设计的封装机制是通过对象来实现 的。对象中的私有成员是隐蔽的,对象以外的访问 被拒绝,而公有成员则提供了对象与外界的接口, 使外界与对象发生联系。 接口是把隐式公共方法和属性结合起来具有特定 功能的一个集合。例如,可以将较一般用途的属性 Color和方法Drive()、Stop()组合到一个接口 IVehicle中,然后可以在Car对象或Bicycle对象 上使用该接口。接口不能单独存在,一个类可以支 持多个接口,多个类也可以支持相同的接口。
§1.2 面向对象的基本概念
1.2.1对象、消息和类 2.消息 在面向对象程序设计中,消息分为公有消息和私 有消息两类。若有一批消息同属于一个对象,则其 中由外界对象直接向其发送的部分称为对象类中,消息 print() 为公有 消 息 , 而 printName() 、 printage() 、 printadd()、printsex()为私有消息。
§1.2 面向对象的基本概念
1.2.1对象、消息和类 1.对象 面向对象中的对象是由描述自身状态特征(属性) 的 数据及定义在该数据上可对这些状态施加的一组 操作组成的实体,是数据单元和过程单元的集合体。
§1.2 面向对象的基本概念
1.2.1对象、消息和类 1.对象 在计算机中,对象可看成是存储器中一个可标识 的区域,是一个数值的集合。在面向对象程序设计 中,对象用一个运行中的存储单元来存放,其状态 用属性的值来表征,可以是初等数据类型(整型、 实型、字符型等),也可以是用户自定义的数据类 型(结构、枚举等),还可以是对象(如“人”这 个对象,其状态属性“家庭成员”可能是另一个对 象)。
§1.2 面向对象的基本概念
1.2.1对象、消息和类 1.对象 对象作为构成和支撑整个面向对象程序设计最重 要的细胞和基石,具有模块独立性(一个对象是一 个独立存在的模块)、动态连接性(通过消息激活 机制使对象之间动态联系)和易维护性(对象的功 能和实现细节局限于模块内部)三个特征。 现实世界中一切事物都是对象,在解决实际问题 时,首先要分析对象,这直接影响到面向对象程序 设计的质量。
面向对象程序设计基础详解PPT共143页
END
面向对象程序设计基础详解
1、合法而稳定的权力在使用得当时很 少遇到 抵抗。 ——塞 ·约翰 逊 2、权力会使人渐渐失去温厚善良的美 德。— —伯克
3、最大限度地行使权力总是令人反感 ;权力 不易确 定之处 始终存 在着危 险。— —塞·约翰逊 4、权力会奴化一切。——塔西佗
5、虽然权力是一头固执的熊,可是金 子可以 拉着它 的鼻子 走。— —莎士 比
16、业余生活要有意义,不要越轨。——华盛顿 17、一个人即使已登上顶峰,也仍要自强不息。——罗素·贝克 18、最大的挑战使别人过得更美好。——雷锋 20、要掌握书,莫被书掌握;要为生而读,莫为读而生。——布尔沃
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4
面向对象开发方法的组成
❖ OOSD由三部分组成:
▪ OOA(Object-Oriented Analysis)面向对象的分析 ▪ OOD(Object-Oriented Design)面向对象的设计 ▪ OOP (Object-Oriented Program)面向对象的程序设计
强调的是对一个系统中的对象特征和行
13
类(Class)
❖ 由于对象是类的实例,在进行分析和设计时,通常把注意 力集中在类上,而不是具体的对象上。
14
对象和类的描述
❖ 对象和类一般采用“对象图” 和 “类图” 来描述。
类名
类图 属性
运算
人
姓 名:字符串 年 龄: 整 型
改换工作 改换地址
文件
文件名 文件大小 最近更新日期
打印
几何对象
▪ 状态模型(动态模型), 描述任何时刻对象的联系及其联系的 改变,即时序。常用状态图, 事件追踪图描述;
▪ 处理模型(函数模型), 描述系统内部数据的传送处理;
❖ 显然,在三大模型中,最重要的是对象模型。
6
OOD 法
❖ OOD 法是在需求分析的基础上,进一步解决“如何作” 的问题,OOD 法也分为概要设计和详细设计:
16
继承 (Inheritance)
❖ 对象的最基本的特征是封装性和继承性。
12
类(Class)
❖ 类又称对象类(Object Class),是一组具有相同属性和相 同操作的对象的集合。在一个类中,每个对象都是类的实 例(instance) ,它们都可以使用类中提供的函数。
❖ 类具有属性,用数据结构来描述类的属性,类具有操作, 它是对象的行为的抽象,操作实现的过程称为方法 (method) ,方法有方法名,方法体和参数。 。
8
面向对象的方法的代表性成果
❖ 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
3
什么是面向对象的开发方法
❖ 面向对象技术的特点:
▪ 对软件开发过程所有阶段进行综合考虑。 ▪ 软件生存期各阶段所使用的方法、技术具有高度的连续性,
用符合人类认识世界的思维方式来分析、解决问题; ▪ 将OOA、OOD、OOP有机地集成在一起。
OOA(Object-Oriented Analysis) OOD(Object-Oriented Design) OOP(Object-Oriented Program)
颜色 位置
移动(delta:矢量) 选择(P:指针型):布尔型
旋转(角度)
对象图
❖ 对象类的描述
(人)
李军 24
程序员 无
(人)
张红兵 28
绘图员 人民路8号
❖
对象的描述
15
继承 (Inheritance)
❖ 继承是使用现存的定义作为基础,建立新定义的技术。是 父类和子类之间共享数据结构和方法的机制,这是类之间 的一种关系。在定义和实现一个类的时候,可以在一个已 经存在的类的基础上来进行,把这个已经存在的类所定义 的内容做为自己的内容,并加入若干新内容。
10
对象(Object)
❖ 对象(Object)是客观事物或概念的抽象表述,即对客观存 在的事物的描述统称为对象,对象可以是事、物、或抽象 概念 ,是将一组数据和使用该数据的一组基本操作或过程 封装在一起的实体。
11
对象(Object)
❖ 对象都存在一定的状态(state),内部标识(identity),可以 给对象定义一组运算(operation),对象通过其运算所展示的 特定行为称为对象行为(behavior),对象本身的性质称为属 性(attribute),对象将它自身的属性及运算“包装起来”, 称为“封装”(encapsulation).
程序设计技术
第三章 面向对象程序设计思想
1
LOGO
什么是面向对象的开发方法
❖ 什么是面向对象的开发方法 :
▪ OOSD (Object-Oriented Software Development)法是一种 把 面向对象的思想应用于软件开发过程,指导开发活动的系统 方法;
▪ 面向对象的方法是一种运用对象、类、继承、封装、聚合、 消息传送、多态性等概念来构造系统的软件开发方法;
2
什么是面向对象的开发方法
❖ 什么是面向对象:
▪ 根据Coad 和 Yourdon 的定义,按照以下4个概念设计和实现 的系统,称为是面向对象的。
▪ 面向对象=对象 (object)
+类 (classification) +继承(inheritance) +通信 (communication with messages)
和OOSE的基础上推出了统一建模语言UML。
9
面向对象的概念
❖ 理解面向对象的基本概念对于学习和掌握面向对象的开发 方法是十分重要的。
对象(Object) 类(Class) 继承(Inheritance) 消息(Information) 多态性(Polymorphism) 永久对象(Persistent object)
▪ 概要设计:细化对象行为,添加新对象,认定类,组类库, 确定外部接口及主要数据结构;
▪详细设计:加细对象描述;
7
OOP 法
❖ OOP 法是使用面向对象的程序设计语言,如C++进行程序 设计。
▪ Coad和Yourdon给出一个面向对象的定义:面向对象=对象+ 类+继承+消息;
▪ 如果一个软件系统是按照这样四个概念设计和实现的,则可 以认为这个软件系统是面向对象的;
OOA
为的定义。建立系统的三类模型。
OOD
与OOA密切配合顺序实现对现实世界的进一 步建模。
OOP
是面向对象的技术中发展最快的,使用面向 对象的程序设计语言,进行编码。
5
OOA法
❖ OOA法就是要解决“做什么”的问题。OOA 法的基本任 务就是要建立三种模型:
▪ 对象模型(信息模型),定义构成系统的类和对象,它们的属 性与操作;
面向对象开发方法的组成
❖ OOSD由三部分组成:
▪ OOA(Object-Oriented Analysis)面向对象的分析 ▪ OOD(Object-Oriented Design)面向对象的设计 ▪ OOP (Object-Oriented Program)面向对象的程序设计
强调的是对一个系统中的对象特征和行
13
类(Class)
❖ 由于对象是类的实例,在进行分析和设计时,通常把注意 力集中在类上,而不是具体的对象上。
14
对象和类的描述
❖ 对象和类一般采用“对象图” 和 “类图” 来描述。
类名
类图 属性
运算
人
姓 名:字符串 年 龄: 整 型
改换工作 改换地址
文件
文件名 文件大小 最近更新日期
打印
几何对象
▪ 状态模型(动态模型), 描述任何时刻对象的联系及其联系的 改变,即时序。常用状态图, 事件追踪图描述;
▪ 处理模型(函数模型), 描述系统内部数据的传送处理;
❖ 显然,在三大模型中,最重要的是对象模型。
6
OOD 法
❖ OOD 法是在需求分析的基础上,进一步解决“如何作” 的问题,OOD 法也分为概要设计和详细设计:
16
继承 (Inheritance)
❖ 对象的最基本的特征是封装性和继承性。
12
类(Class)
❖ 类又称对象类(Object Class),是一组具有相同属性和相 同操作的对象的集合。在一个类中,每个对象都是类的实 例(instance) ,它们都可以使用类中提供的函数。
❖ 类具有属性,用数据结构来描述类的属性,类具有操作, 它是对象的行为的抽象,操作实现的过程称为方法 (method) ,方法有方法名,方法体和参数。 。
8
面向对象的方法的代表性成果
❖ 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
3
什么是面向对象的开发方法
❖ 面向对象技术的特点:
▪ 对软件开发过程所有阶段进行综合考虑。 ▪ 软件生存期各阶段所使用的方法、技术具有高度的连续性,
用符合人类认识世界的思维方式来分析、解决问题; ▪ 将OOA、OOD、OOP有机地集成在一起。
OOA(Object-Oriented Analysis) OOD(Object-Oriented Design) OOP(Object-Oriented Program)
颜色 位置
移动(delta:矢量) 选择(P:指针型):布尔型
旋转(角度)
对象图
❖ 对象类的描述
(人)
李军 24
程序员 无
(人)
张红兵 28
绘图员 人民路8号
❖
对象的描述
15
继承 (Inheritance)
❖ 继承是使用现存的定义作为基础,建立新定义的技术。是 父类和子类之间共享数据结构和方法的机制,这是类之间 的一种关系。在定义和实现一个类的时候,可以在一个已 经存在的类的基础上来进行,把这个已经存在的类所定义 的内容做为自己的内容,并加入若干新内容。
10
对象(Object)
❖ 对象(Object)是客观事物或概念的抽象表述,即对客观存 在的事物的描述统称为对象,对象可以是事、物、或抽象 概念 ,是将一组数据和使用该数据的一组基本操作或过程 封装在一起的实体。
11
对象(Object)
❖ 对象都存在一定的状态(state),内部标识(identity),可以 给对象定义一组运算(operation),对象通过其运算所展示的 特定行为称为对象行为(behavior),对象本身的性质称为属 性(attribute),对象将它自身的属性及运算“包装起来”, 称为“封装”(encapsulation).
程序设计技术
第三章 面向对象程序设计思想
1
LOGO
什么是面向对象的开发方法
❖ 什么是面向对象的开发方法 :
▪ OOSD (Object-Oriented Software Development)法是一种 把 面向对象的思想应用于软件开发过程,指导开发活动的系统 方法;
▪ 面向对象的方法是一种运用对象、类、继承、封装、聚合、 消息传送、多态性等概念来构造系统的软件开发方法;
2
什么是面向对象的开发方法
❖ 什么是面向对象:
▪ 根据Coad 和 Yourdon 的定义,按照以下4个概念设计和实现 的系统,称为是面向对象的。
▪ 面向对象=对象 (object)
+类 (classification) +继承(inheritance) +通信 (communication with messages)
和OOSE的基础上推出了统一建模语言UML。
9
面向对象的概念
❖ 理解面向对象的基本概念对于学习和掌握面向对象的开发 方法是十分重要的。
对象(Object) 类(Class) 继承(Inheritance) 消息(Information) 多态性(Polymorphism) 永久对象(Persistent object)
▪ 概要设计:细化对象行为,添加新对象,认定类,组类库, 确定外部接口及主要数据结构;
▪详细设计:加细对象描述;
7
OOP 法
❖ OOP 法是使用面向对象的程序设计语言,如C++进行程序 设计。
▪ Coad和Yourdon给出一个面向对象的定义:面向对象=对象+ 类+继承+消息;
▪ 如果一个软件系统是按照这样四个概念设计和实现的,则可 以认为这个软件系统是面向对象的;
OOA
为的定义。建立系统的三类模型。
OOD
与OOA密切配合顺序实现对现实世界的进一 步建模。
OOP
是面向对象的技术中发展最快的,使用面向 对象的程序设计语言,进行编码。
5
OOA法
❖ OOA法就是要解决“做什么”的问题。OOA 法的基本任 务就是要建立三种模型:
▪ 对象模型(信息模型),定义构成系统的类和对象,它们的属 性与操作;