uml静态结构

来源:互联网 发布:淘宝直通车关键词词典 编辑:程序博客网 时间:2024/05/16 14:22

UML图中类之间的关系:依赖,泛化,关联


一、依赖:虚线的箭头表示
依赖关系有三种情况:

1A类是B类中的(某中方法的)局部变量;

2A类是B类方法当中的一个参数;

3A类向B类发送消息,从而影响B类发生变化;

依赖的种类:

访问:允许一个包访问另一个包【access】

绑定:为模板参数赋值以生成一个新的模型元素【bind】

调用:声明一个类调用其他类的方法【call】

导出:声明一个实例可以从另一个实例中到处【derive】

友元:允许一个元素访问另一个元素而不论被访问元素的可见性【friend】

引入:允许一个包访问另一个包的内容并未被访问包的组成部分添加别名【import】

实例化:关于一个类的方法生成了另一个类的实例的生命【instantate】

参数:一个操作和他参数之间的关系【parameter】

实现:说明和其实之间的映射关系【realize】

精化:声明具有两个不同层次上元素的映射关系【refine】

发送:信号发送者和信号接受者之间的关系【send】

跟踪:声明不同模型中元素之间的连接,没有映射精确【trace】

使用:声明使用一个模型元素需要已存在的另一个模型元素,这样才能正确实现使用者的功能(调用,实例化,参数,发送)【use】



二、泛化:实线的三角箭头表示(继承),虚线的三角箭头(接口实现)

泛化关系有三个要求:

1、子类与父类应该完全一致,父类所具有的属性、操作,子类应该都有;

2、子类中除了与父类一致的信息以外,还包括额外的信息;

3、可以使用父类的实例的地方,也可以使用子类的实例;


三、关联

关联关系是类之间的关系:

•  关联关系(Association) 是类与类之间最常用的一种关系,它是一种结构化关系,用于表示一类对象与另一类对象之间有联系
•  UML类图中,用实线连接有关联的对象所对应的类,在使用JavaC#C++等编程语言实现关联关系时,通常将一个类的对象作为另一个类的属性
•  在使用类图表示关联关系时可以在关联线上标注角色名

1、一般关联:实线箭头表示
耦合比较低的关系,对象之间的一种引用关系,比如客户和订单之间的关系,用类的属性表示


2、聚合:空心的菱形表示
是一种has-a的关系,表示局部和整体的一个关系,不过整体不在了局部还可以存在

3、组合:实心的菱形表示
一种强烈的包含关系,contains-a的关系,整体消失局部也不存在。
•  组合关系(Composition)也表示类之间整体和部分的关系,但是组合关系中部分和整体具有统一的生存期。一旦整体对象不存在,部分对象也将不存在,部分对象与整体对象之    间具有同生共死的关系。
•  在组合关系中,成员类是整体类的一部分,而且整体类可以控制成员类的生命周期,即成员类的存在依赖于整体类。



原创粉丝点击