zoukankan      html  css  js  c++  java
  • UML类图简单介绍

    UML类图

    在这里简单介绍一下UML的图形代表的是什么意思,以及在编码过程中是如何体现的。

    UML类图实例如下图所示:

     

    图01 UML类图实例

    类的表示

    类的中英方对照如下:

    表01 类的中英方对照

    中文 英文
    动物 Animal
    Bird
    大雁 WildGoose
    企鹅 Penguin
    雁群 WildGooseAggregate
    氧气 Oxygen
    Water
    气候 Climate
    翅膀 Wing

    关系说明

    企鹅需要‘知道’气候的变化,需要‘了解’气候规律。当一个类‘知道’另一个类时,可以用关联(association)。关联关系用实线箭头来表示
    代码表示如下:

    class Penguin : Bird
    {
        // 在企鹅Penguin中,引用气候Climate对象
        private Climate climate;
    }

    大雁是群居动物,每只大雁都是属于一个雁群,一个雁群可以有多只大雁,所以它们之间就满足聚合(Aggregation)关系。聚合表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。

    代码表示如下:

    class WildGooseAggregate
    {
        // 在雁群WildGooseAggregate类中,有大雁数组对象narrayWildGoose
        private WildGoose[] narrayWildGoose;
    }

    鸟和翅膀它们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。合成关系用实心的菱形+实绩箭头来表示。合成(Composition,也有翻译成‘组合’的)是一种强的‘拥有’关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样。
    代码表示如下:

    class Bird
    {
        private Wing wing;
        public Bird()
        {
            // 在鸟Bird类中,初始化时,实例化翅膀Wing,它们之间同时生成
            wing = new Wing();
        }
    }

    动物几大特征,比如有新陈代谢,能繁殖。而动物要有生命力,需要氧气、水以及食物
    等。也就是说,动物依赖于氧气和水。它们之间是依赖关系(Dependency),用虚线箭头来表示

    代码表示如下: 

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

    设计模式总结

    经过这段时间的努力总算是把《大话设计模式》这本书中提到的所有的模式的关键内容完成了。类图的简单介绍原本应该在最开始的时候完成的,但是当时觉得没有必要,今天觉得还是完成一下这样会好一些。认认真真并且上机去验证代码还是有点费时费力的,不过这样收获还是很多的,希望我的博客能够帮到其他人吧。

    2014-12-12   19:53:14

  • 相关阅读:
    HDU4311 Meeting point1 曼哈顿距离快速计算
    POJ1681 Painter's Problem 高消
    解决FLASH遮住DIV层的方法
    jcarousellite jQuery实现滚动的图片
    js中escape,encodeURI,encodeURIComponent三个函数的区别
    clear:both; 用法 什么时候用
    IE6下使网页png图片透明显示
    jqueryautocomplete 使用手册
    jquery获得select option的值 和对select option的操作
    jquery1.6获取checkbox的选中状态
  • 原文地址:https://www.cnblogs.com/xiaoheike/p/4160393.html
Copyright © 2011-2022 走看看