面向对象的基本概念

面向对象的基本概念

对象

客观世界中的事物都是对象(Object):物理对象,逻辑对象

属性

描述对象的静态特征

操作

描述对象的动态特征

指具有相同属性和操作的一组对象的集合。它描述的不是单个对象,而是一类对象的共同特征。

例如:          

学籍管理系统中可以定义“学生”类,而“张三”、“李明”、“王娟”这些学生就是属于该类的对象,或者叫类的实例;

她们都具有该类的属性和操作,但每个对象的属性值可以各不相同。

 

消息和通信

对象具有自治性和独立性,它们之间通过消息(Message)进行通信。

发送消息的对象叫客户,接收消息的对象叫服务器。

消息包含:请求的服务(操作)名,输入参数,输出参数。

关系

聚合(aggregation):一个对象是另一个对象的组成部分,也叫“部分—整体”关系。    

如:“学生”和“班级”的关系等。

依赖(dependency):一个对象对另一个对象存在依赖关系,且后者的改变会影响到前者。    

如:“借书证”对象依赖于某个“学生”对象,当“学生”不存在了,相应的“借书证”也应被销毁。

泛化(generalization):对象所属类之间的“一般—特殊”关系,特殊类表示对一般类内涵的细化。    

如:“学生”类可以进一步细化为“本科生”和“研究生”类。

一般关联(association):对象之间的关联关系,主要指服务关系。    

如:“教师”和“学生”之间的教学关系。

多重继承

同时具有多个类的属性,如鸭嘴兽既有鸟的特征,又有哺乳动物的特征;在职研究生既有学生的身份,同时又有在职的身份等。

多态性

指同一事物在不同条件下表现出不同形态。如发送消息的对象并不一定知道接收消息的对象属于哪一类;消息被收到后,接收消息的不同类型对象可以作出不同解释,执行不同操作,从而产生不同结果。如“选课”操作。

组件

指可以单独开发、测试和部署的软件模块。它可以只有一个类,也可以包含多个类。

接口

对组件服务的抽象描述。它是一种抽象数据类型,描述的是功能的“契约”,而不考虑与实现有关的任何操作。

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页