• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++中类之间的关系

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文讲解面向对象C++程序设计中类之间的关系。并用UML类图描述这些关系。

关键词:

面向对象 类 对象 C++ UML

适用对象

对C++有一定基础的初级同学

面向对象编程的核心:类

面向对象的思想下编程过程可以减化为:

1. 识别和发现备选对象

2. 给对象分配职责

3. 确定对象之间的关系

下面列出一些术语,如果同学位对这些术语还不太了解,那么请要求我给大家作补充说明。

编号

术语

原文

1

Class

2

对象

Object

3

实例

Instance

4

属性

attribute

5

操作(成员函数)

operation

6

关系

relationship

7

UML

Unified Modeling Language

8

类图

Class diagram

类之间的关系

关系1: 没有关系

两个对象之间如果没有关系,那么它们是孤立的。

关系2: 关联关系 (Association)

A和B之间是关联关系;

C与自己关联

关系3:有方向的关联关系 (DirectedAssociation)

关联还可以有方向性的。如下图

这种关系是关联关系的一种。

关系4: 聚合关系(Aggregate)

聚合关系也是关联关系的一种,这种关系能确定两个类之间的部分或整体关系。

关系5: 组合关系(composite)

组合关系也是一种部分和整体之间的关系。您能区分组合与聚合的区别吗?这个问题当作业来讨论吧。

关系6:泛化关系(Generalization)

泛化关系就是常见的继承关系。Student.csdn.net社区中的用户可以模型化为上图。

关系7:依赖关系(Dependency)

比如用户有一个登录的操作,用户密码在数据库在以MD5的形式存放,登录操作要用MD5类提供的decode()方法进行明码到密码的转换。

关系8:实现(Realization)

关系9:参数化关系(Parameter)

这种关系UML中还没有定义,我暂时为它命名这Parameter关系吧。

作业:

1. 说说聚合与组合关系的差别。

2. 尝试用C++代码代码描述上述关系。




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++#include—尖括号和双引号的区别发布时间:2022-07-13
下一篇:
Codeforces660CHardProcess(尺取法)发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap