第4章面向对象程序设计基本概念 对象( object 我们可以把生活所在的真实世界当作是 由许多大小不同的对象所组成的。对象 可以是有生命的个体,比如一个人或 ■对象也可以是无生命的个体,比如一辆汽车或一 计算机 ■对象也可以是一件抽象的概念,如天气的变化或 鼠标所产生的事件
第4章 面向对象程序设计基本概念 ◼ 对象 (object) ◼ 我们可以把生活所在的真实世界当作是 由许多大小不同的对象所组成的。对象 可以是有生命的个体,比如一个人或一 只鸟。 ◼对象也可以是无生命的个体,比如一辆汽车或一 台计算机。 ◼对象也可以是一件抽象的概念,如天气的变化或 鼠标所产生的事件
对象的特征 对象有两个特征:状态和行为。例如:一个人有他的身高或 体重作状态,并有他的行为——如唱歌、打球、骑摩托车、 开汽车。一只狗有它的颜色作状态,也有它的行为,如吠叫 或跳跃。 而在程序设计中,软件对象的概念由真实世界对象而来。对 象的概念是面向对象软件对象将状态保存在变量或称数据字 段里。而行为则借助方法( methods)为工具来实现。 rethod: E data: field: I 方法(行为) 数据字段(状态) data: field: : n method: i
对象的特征 ◼ 对象有两个特征:状态和行为。例如:一个人有他的身高或 体重作状态,并有他的行为——如唱歌、打球、骑摩托车、 开汽车。一只狗有它的颜色作状态,也有它的行为,如吠叫 或跳跃。 ◼ 而在程序设计中,软件对象的概念由真实世界对象而来。对 象的概念是面向对象软件对象将状态保存在变量或称数据字 段里。而行为则借助方法(methods)为工具来实现。 data field 1 data field n method 1 method n 方法(行为) 数据字段(状态)
软件对象的定义 我们可以对软件对象 作以下的定义 定义:对象是由数据字段(变量)及相关方法所组成的软件包 software bundle) data field IF 公用方法 I data field n 私用数据细节 method
软件对象的定义 ◼ 我们可以对软件对象 作以下的定义—— data field 1 data field n method 1 method n 公用方法 私用数据细节 定义:对象是由数据字段(变量)及相关方法所组成的软件包(software bundle)
汽车对象 以汽车为例,我们可定义其状态与方法 如 颜色 排档数 煞车 排气量 开大灯[开气 轮胎型号
汽车对象 ◼ 以汽车为例,我们可定义其状态与方法 如: 换档 开大灯 煞车 开冷气 颜色 排档数 排气量 轮胎型号
OOP三大特性:封装、继承与多态 封装 从軟件对象的表示图里,我们可以看到对象的核心是 由对象的变量所构成。对象的方法包围此核心,使核 心对其他的对象是隐藏的,而将对象的变量包裹在其 对象方法的保护性监护之下就称之为封装。封装用来 将对其他对象不是重要的实行细节隐藏起来。就好比 你开车换档时,并不须要知道变速箱、齿轮等机械是 如何运作的,你只要知道将档排到那里即可。同样在 软件程序中,你并不需要知道一个类的完整结构是如 何,你只要知道要调用哪一个方法即可。OOP将数据 成员和属于此数据的操作方法,都放在同一个实体或 称对象( object)中,这就是所谓的封装
OOP三大特性:封装、继承与多态 ◼ 封装 ◼ 从软件对象的表示图里,我们可以看到对象的核心是 由对象的变量所构成。对象的方法包围此核心,使核 心对其他的对象是隐藏的,而将对象的变量包裹在其 对象方法的保护性监护之下就称之为封装。封装用来 将对其他对象不是重要的实行细节隐藏起来。就好比 你开车换档时,并不须要知道变速箱、齿轮等机械是 如何运作的,你只要知道将档排到那里即可。同样在 软件程序中,你并不需要知道一个类的完整结构是如 何,你只要知道要调用哪一个方法即可。OOP将数据 成员和属于此数据的操作方法,都放在同一个实体或 称对象(object)中,这就是所谓的封装