【建模】UML类关系分析

来源:互联网 发布:java classtag 编辑:程序博客网 时间:2024/05/16 18:38

一、UML类关系分析

        1、关联(asociation)

              一般是一方拥有另一方对象的指针。箭头的方向是访问方向。

          

         2、聚合(Aggregation)和组合(Composition)

              聚合和关联一般不做区分,聚合也是一方拥有另一方指针。

              组合是一方拥有另一方对象。

          

        3、泛化(Generalization) 

              是类的继承。

             

        4、依赖(Dependency)   

                

                依赖一般是:类A一般是在把B当做局部变量、或者访问B静态方法、或者把B作为函数的参数

       5、实现(Realization)

            一般是类继承接口,让类来实现接口中函数,在Java中常见。

          

       6、模板

            要表示成这个意思。参考【8】           

template<class T>class A{       ....}

       StarUML中,右键菜单添加

        
          

二、区别和联系

       1、关联(asociation)和依赖(dependency)      

uml图如下:

     

代码如下:

public class Person //关联{        Car car=new Car();//C++中则是 Car car;}public class Person //依赖{    public void buy(Car car)   {   }}

他们之间的区别在于:关联会在类Person存在一个属性Car car;依赖只是在把Car的实例作为Person成员函数的参数,或作为函数的局部变量

虚箭头,表示在类中要实例化一个类的对象【3】

实箭头,表示在类中要引用一个类的对象。

三、UML状态图到C++代码的转换【10】

       

参考:1、UML中关联和依赖的区别

2、UML类图关系大全

【3】、UML中几种类间关系

【4】、GOF设计模式中描述箭头和三角的涵义

5、认识UML类图元素_java之UML

6、UML类图关系

7、类间四大关系

【8】、UML类图关系大全

9、StarUML试用

10、从UML模型到C++代码

原创粉丝点击