一. 类

类图分三层:

第一层是类的名称,如果是抽象类,则用斜体显示。
第二层是类的特性,通常就是字段和属性。
第三层是类的操作,通常是方法或行为。注意 '+' 表示 public,'-' 表示 private,'#' 表示 protected 。

  1. class Animal
  2. {
  3. public:
  4. void eat();
  5. void birth();
  6. public:
  7. bool lief;
  8. };

二. 继承关系

继承关系用 空心三角 + 实线 来表示。

三. 聚合关系

聚合关系表示一种 的 “拥有” 关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。

聚合关系用 空心的菱形 + 实线 箭头来表示。

  1. //大雁
  2. class WideGoose
  3. {
  4. };
  5. //雁群
  6. class WideGooseAggregate
  7. {
  8. private:
  9. WideGoose arrayWideGoose[];
  10. };

注:用代码表示就是,类里面有类。

四. 组合关系

组合是一种的 “拥有” 关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样。

组合关系用 实心的菱形 + 实线箭头 来表示。

  1. //翅膀
  2. class Wing
  3. {
  4. };
  5. //鸟
  6. class Bird
  7. {
  8. public:
  9. Bird()
  10. {
  11. m_wing = new Wing;
  12. }
  13. private:
  14. Wing* m_wing;
  15. };

注:在构造函数里,实例化,两者同时生成。

五. 依赖关系

用虚线箭头来表示。

  1. class Animal
  2. {
  3. public:
  4. void Metabolism(Oxygen oxy, Water wat)
  5. {
  6. }
  7. };

六. 关联关系

关联关系用实线箭头来表示。

七. 实现接口

用实心三角形+ 虚线来表示。

最新文章

  1. ASP.NET Core 数据保护(Data Protection 集群场景)【下】
  2. 使用Object.create 克隆对象以及实现单继承
  3. 电脑Windows使用中遇到的那些问题
  4. 【SDOI2008】【P1377】仪仗队
  5. Linux -RAID
  6. 软件工程随堂作业--随机产生30到四则运算(c语言)
  7. zTree默认选中指定节点并执行事件
  8. 关于理解《C++ 对象模型》中:把单一元素的数组放在末尾,struct可以拥有可变大小的数组
  9. C#中方法,属性与索引器
  10. 总结 XSS 与 CSRF 两种跨站攻击
  11. GridView合并多行列值
  12. android面试题之三
  13. WPF界面设计技巧(9)—使用UI自动化布局
  14. win8系统换win7系统
  15. 分页控件AspNetPager学习笔记
  16. 【Win 10 应用开发】UI Composition 札记(三):与 XAML 集成
  17. linux 内存-文档学习
  18. 基于node.js的博客搭建
  19. [Codeforces235D]Graph Game——概率与期望+基环树+容斥
  20. 使用tor网络

热门文章

  1. JavaScipt第四天笔记
  2. c++中不需要显示指出struct
  3. phaser学习总结之Tween详解
  4. C#中winform中panel重叠无法显示问题
  5. Linux修改屏幕分辨率至2K
  6. 非后端开发Mysql日常使用小结
  7. idea破解版安装、配置jdk以及建立一个简单的maven工程
  8. python程序编译成exe文件
  9. Spring源码分析之IOC的三种常见用法及源码实现(一)
  10. SpringMVC快速入门记录(一)