文档章节

设计模式(一)统一建模语言UML

1527
 1527
发布于 2018/08/06 22:43
字数 350
阅读 10
收藏 1

    UML类图主要描述的是对象与类之间的关系,包含依赖(Dependency),关联(Association),聚合(Aggregation),组合(Composition),泛化(Generalization),实现(Realization)等。

  1. 泛化(Generalization)就是通常所说的继承。

class Shape{ //形状

}

class Square extends Shape{ //方形继承自Shape



}

    2.关联(Association)元素间的结构化关系,被关联的元素间通常能够独立存在。例如,人与书籍之间都保持独立并不存在强关系,是一种弱关系。在UML中用单向箭头表示。

    3.依赖(Dependency)是类与类之间的连接,依赖总是单向的。表示一个类依赖另一个类的定义。一个人(Person)可以买车(Car)和房子(House),Person类依赖于Car类和House类。

    4.聚合(Aggregation)聚合是整体和个体之间的关系。例如:汽车类与引擎类,轮胎类。是一种强的关联关系。

5.组合(Composition)是关联关系的一种,是比聚合关系强的关系。代表整体的对象需要负责保持部分对象的存活。例如人和他的四肢就是组合关系,但是人和它手中的笔就是聚合关系。

 

© 著作权归作者所有

共有 人打赏支持
1527
粉丝 7
博文 108
码字总数 45500
作品 0
成都
程序员
私信 提问
学了那么多年设计模式依然不会用!那可真蠢!

什么是设计模式? 设计模式(Design Pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。 设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决...

GitChat技术杂谈
2018/10/26
0
0
【软考学习】设计模式——解释器模式

【背景】 设计模式是非常重要的一块知识,每个设计模式都值得深入了解和学习。 【内容】 结构型设计模式总结: 解释器设计模式总结: 一、定义:给定一个语言,定义它的文法的一种表示,并定...

yym15732626210
2018/01/31
0
0
设计模式 2014-12-19

book: 阎宏《JAVA与模式》 架构设计栏目 http://blog.csdn.net/enterprise/column.html 概要: http://bbs.csdn.net/forums/Embeddeddriver 23种设计模式分别是: 1.单例模式 2.工厂方法模式...

jayronwang
2014/12/19
0
0
【软考学习】设计模式——状态模式

【背景】 设计模式是非常重要的一块知识,每个设计模式都值得深入了解和学习。 【内容】 结构型设计模式总结: 状态设计模式总结: 一、定义:当一个对象的内在状态改变时允许改变其行为,这...

yym15732626210
2018/01/31
0
0
JavaScript设计模式入坑

JavaScript设计模式入坑 介绍 设计模式编写易于维护的代码。 设计模式的开创者是一位土木工程师。Σ( ° △ °|||)︴,写代码就是盖房子。 模式 模式一种可以复用的解决方案。解决软件设计中...

小小小8021
2018/10/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

3.系统和内存架构

在设计程序或并发系统时,需要考虑不同的系统和内存架构风格。 支持并发的计算机系统体系结构 1972年,迈克尔弗林(Michael Flynn)给出了用于分类不同风格计算机系统体系结构的分类法。 该分类...

Eappo_Geng
25分钟前
4
0
今天的学习

1,getimagesize:获得目标图像的大小 2,image_type_to_extension:获得目标文件的后缀信息 3,imagealphablending:设定目标图像混色的模式 4,imagechar:水平的画出一个字符 5,imagecharup...

墨冥
28分钟前
1
0
Java线程中yield与join方法的区别

长期以来,多线程问题颇为受到面试官的青睐。虽然我个人认为我们当中很少有人能真正获得机会开发复杂的多线程应用(在过去的七年中,我得到了一个机会),但是理解多线程对增加你的信心很有用。...

飓风2000
52分钟前
5
0
Python的 is 和 == 弄懂了吗?

在Python中一切都是对象。 Python中对象包含的三个基本要素,分别是: id(身份标识) type(数据类型) value(值) 对象之间比较是否相等可以用 == ,也可以用 is 。 is 和 == 都是对对象进行比较...

上海小胖
52分钟前
2
0
angularJS 路由加载js controller 未定义 解决方案

说明 本文主要说明,在angularJS框架使用中,angularJS 路由加载js controller 未定义 解决方案。 路由 $routeProvider 异步加载js 路由的基本用法,请查看官方文档,下面实例只说明,懒加载...

DrChenXX
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部