面向对象的基本概念

本文深入浅出地讲解了面向对象编程的基础概念,包括对象、属性、操作、类、消息通信、关系(聚合、依赖、泛化和一般关联)、多重继承和多态性。通过学籍管理系统例子,展示了如何创建和使用类,以及对象间通过消息传递实现交互。
摘要由CSDN通过智能技术生成

面向对象的基本概念

对象

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

属性

描述对象的静态特征

操作

描述对象的动态特征

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

例如:          

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

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

 

消息和通信

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

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

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

关系

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

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

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

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

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

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

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

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

多重继承

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

多态性

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

组件

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

接口

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

susan花雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值