3.4面向对象系统分析与设计
3*4.1面向对象的基本概念
面向对象的基本概念有对象、类、抽象、封装、继承、多态、接口、消息、组件、
模式和复用等。
I.对象
对象是由数据及其操作所构成的封装体,是系统中用来描述客观事物的一个封装,
是构成系统的基本单位,采用计算机语言描述,对象是由一组属性和对这组属性进行操
作的一组服务构成。
对象包含三个基本要素,分别是对象标识、对象状态和对象行为。
每一个对象必须有一个名字以区别于其他对象,这就是对象标识;状态用来描述对
象的某些特征;对象行为用来封装对象所拥有的业务操作。
举例说明,对于教师Joe而言,包含性别、年龄、职位等个人状态信息,同时还具
有授课的行为特征,那么Joe就是封装后的一个典型对象。
2.类
类是现实世界中实体的形式化描述,类将该实体的数据和函数封装在一起。类的数
据也叫属性、状态或特征,它表现类静态的一面。类的函数也叫功能、操作或服务,它
表现类动态的一面。
Joe是一名教师,也就拥有了教师的特征,这个特征就是教师这个类所特有的,具
体而言,共同的状态通过属性表现出来,共同的行为通过操作表现出来,如图3-1所示。
3.类和对象的关系
对象是类的实际例子。如果将对象比作房子,那么类就是房子的设计图纸。
例如,银行里所有储户的账户,可以抽象为账户类。用自然语言描述账户类如下:
类 账户
(
属性:
存款人姓名;
身份证号f
开户日期j
账号j
密码j
账上余额j
行为:
存放(),
取款()j
}
用计算机语言表示账户类,命名账户类为ACCOUNT:
Class ACCOUNT
{
Attribute:
n ame;
ID Number;
date;
Account_Number;
pasSword;
total;
Function:
Save c)j
Withdraw(1,
}
账户类的对象,可以是一个个具体的储户如张三工行的账户、张三建行的账户、李
四工行的账户。用计算机语言描述如下:
Class ACCOUNT ZhangSan ICBCAccount;ZhangSan CBCAccount;LiSi ICaCAccount:
----
类和对象的关系可以总结为:
(1)每一个对象都是某一个类的实例。
(2)每一个类在某一时刻都有零或更多的实例。
(3)类是静态的,它们的存在、语义和关系在程序执行前就已经定义好了,对象是
动态的,它们在程序执行时可以被创建和删除。
(4)类是生成对象的模板。
各省软考办 | ||||||||||