UML类图简介

简介:

概述

设计模式中常常使用UML来表示类与类,类与接口之间的关系,UML类图是设计模式入门必备的技能,感觉各种关系比较多,这里做一下总结。

类与接口的表示

类与接口通常是一个矩形框表示,一般分为3层,第一层显示类的名称,如果是抽象类则类名用斜体表示。第二层代表类的特性,通常是字段和属性,第三层是类的操作,通常表现为方法或者行为,其中+表示public,-表示private,#表示protect 
这里写图片描述

常用关系

  • 继承 
    继承关系用空心三角形+实线来表示,在Java中体现为extends关键字 
    这里写图片描述

  • 实现接口 
    实现接口用空闲三角形+虚线,在java中体现为implements关键字 
    这里写图片描述

  • 聚合关系 
    聚合关系表现为一种弱拥有关系,体现为A对象可以包含B对象,但是B对象不是A对象的一部分。 
    实现用空心菱形+实线; 
    在java中可以体现为,一个类的数组或者通过setter或者getter方式注入到整体对象中

//数组对象形式
public class wideGooseAggregate{
    private WideGoose[] arrayWideGoose;//雁群类中有大雁的数组对象
}
//注入方式存在
public class Car {  
        private Engine engine;  

        //构造注入  
        public Car(Engine engine) {  
            this.engine = engine;  
        }  

        //设值注入  
    public void setEngine(Engine engine) {  
        this.engine = engine;  
    }  
    ……  
    }  

    public class Engine {  
        ……  
    }  

这里写图片描述

  • 组合关系 
    组合关系也表示整体和部分之间的关系,体现出的是一种强拥有关系,即整体可以控制成员对象的生命周期,整体对象一旦不存在成员对象也将不存在。通常体现为成员对象在整体类构造方法中被new出来。 
    用实心菱形+实线表示。
public class Bird{
    private Wing wing;
    public Bird(){
    wing = new Wing();
    }
}

这里写图片描述

  • 依赖关系

依赖关系,顾名思义,产生了依赖就会出现这个类的改变会带动另一个类的变化,一般体现在某个类的方法使用另一个类的对象作为参数。 
用虚线+箭头表示。

abstract class Animal{
    public Metabolism(Oxygen oxygen,Water water){
    ……
    }
}

这里写图片描述

  • 关联关系 
    一种结构化关系,用于表示一类对象和另一类对象有联系。在Java中通常表现为一个类的对象作为一个类的成员变量,即表现在代码层面,为被关联类B以类属性的形式出现在关联类A中,也可能是关联类A引用了一个类型为被关联类B的全局变量。 
    用实线表示
public class Penguin{
    private Climate climate;
    ……
}

这里写图片描述

参考: 
《大话设计模式》 
http://blog.csdn.net/lovelion/article/details/7842898


转载:http://blog.csdn.net/xsf50717/article/details/51133680


目录
相关文章
|
7月前
|
uml
UML之类图
UML之类图
98 1
|
7月前
|
数据可视化 Java uml
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
349 1
|
4月前
|
Java uml
使用工厂方法模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程序实
该博客文章通过UML类图和Java代码示例,展示了如何使用工厂方法模式设计一个支持加法、减法、乘法和除法运算的计算机程序,并严格按照类图设计实现程序。
|
4月前
|
Java uml
1、使用简单工厂模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程
该博客文章展示了如何使用简单工厂模式设计一个程序,该程序能够根据用户输入的运算符(加、减、乘、除)对两个数进行计算,并提供了相应的UML类图和Java源码实现。
1、使用简单工厂模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程
|
6月前
|
应用服务中间件 uml
【UML】软件工程中常用图:类图、部署图、时序图、状态图
【UML】软件工程中常用图:类图、部署图、时序图、状态图
673 1
|
4月前
|
数据可视化 Java uml
精通UML:从类图到序列图的实战指南
【8月更文第23天】统一建模语言(Unified Modeling Language, UML)是一种用于软件工程的标准图形化语言,它提供了一套工具来帮助开发团队可视化、构造和文档化软件系统。在UML中,类图和序列图是最常用也是最重要的两种图。类图用于描述系统的静态结构,而序列图则用于表示对象之间的交互和系统的动态行为。
198 5
|
4月前
|
设计模式 uml
设计模式常用的UML图------类图
这篇文章介绍了UML中类图的基本概念和用途,详细解释了类与接口、类之间的关系,包括继承、实现、组合、聚合、关联和依赖等六种关系,并展示了它们在类图中的表示方法。
设计模式常用的UML图------类图
|
4月前
|
uml
UML 类图几种关系(依赖、关联、泛化、实现、聚合、组合)及其对应代码
UML 类图几种关系(依赖、关联、泛化、实现、聚合、组合)及其对应代码
395 0
|
7月前
|
数据可视化 Java uml
Java的UML类图
Java的UML类图
110 1
|
6月前
|
测试技术 uml
【UML】详解UML类图
【UML】详解UML类图
112 0