`

UML示例图

 
阅读更多
UML示例图:http://www.360doc.com/content/09/0414/18/10587_3131518.shtml
比较详细

UML类图图示样例及说明: http://www.cnblogs.com/abllyboy/archive/2011/01/12/1933502.html



类图分三层,第一层显示类的名称,如果是抽象类,则就用斜体显示。第二层是类的特性,通常就是字段和属性。第三层是类的操作,通常是方法或行为。注意前面的符号,“+”表示 public ,“-”表示private ,“#”表示protected 。
接口图与类图的区别主要是顶端有<<interface>>显示,第一行是接口名称,第二行是接口方法。接口还有另一种表示方法,俗称棒棒糖表示法。圆圈旁边有接口名称,接口方法在实现类中出现。
实现接口:用空心三角形+虚线来表示。
继承关系(generalization):也称泛化关系。用空心三角形+实现来表示。
关联关系(association):用实线箭头来表示。即当一个类“知道”另一个类时表示为关联关系。例如企鹅要“知道”天气的变化。
聚合关系(aggregation):用空心的菱形+实线箭头来表示。聚合表示一种弱的“拥有”关系,体现是的A对象可以包含B对象,但B对象不是A对象的一部分。比如每只大雁属于一个雁群,一个雁群可以有多个大雁,这就满足了聚合关系。简 单说就是符号与符号之间的替换关系。几个词,一组词,他们性质相同,具有同样的组合功能,在语言结构的同一个位置上可以互相替换,替换后生成不同的句子, 这些词之间的这种替换关系,就是聚合关系。在一个语言结构中,看到其中的某个单位,会联想到另一个单位,并用另一个单位来替换,组合成新的句子,以符合交 际的需要。比如根据“我吃饭”中的“我”,联想到“他”,可以替换造出“他吃饭”,根据其中的“吃”用“做”、“煮”、“烧”等替换,可以造出“我做饭”,根据其中的“饭”,用具有相同功能的“面”、“饼”、“菜”等词语替换,可以造出“我吃面”。
组合关系(composition):也称合成关系,用实心的菱形+实 线箭头来表示。组合关系是一种强的“拥有”关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样。比如鸟和翅膀就是组合关系,因为他们是部分和 整体的关系,并且翅膀和鸟的生命周期是相同的。另外,你会注意到组合关系的连线两端有数字,这些被称为基数。表明这一端的类可以有几个实例,例如鸟有两个 翅膀,两条腿,一个头等。如果一个类可以有无数个实例就用“n”来表示,例如鸟可以有“n”个羽毛。关联关系、聚合关系也可以有基数。
依赖关系(dependency):用虚线箭头表示。比如,动物要有生命力,需要氧气、水以及食物等,也就说动物依赖于氧气和水,他们之间就是依赖关系。
转自:http://blog.csdn.net/anglexiaoher/archive/2010/12/09/6064885.aspx




UML示例图

在Visio里,包和类的关系是包含关系,将类拖入包的文件夹之后,关系就建立了,二元关联符号可以设置为:聚合、合成。
接口:空心圆+直线(唐老鸭类实现了‘讲人话’);
依赖:虚线+箭头(动物和空气的关系);
关联:实线+箭头(企鹅需要知道气候才迁移);
聚合:空心四边形+实线+箭头(雁群和大雁的关系);
合成:实心四边形+实线+箭头(鸟和翅膀的关系);
泛化:空心三角形+实线(动物和鸟的继承关系);
实现:空心三角形+虚线(实现大雁飞翔的接口);

UML类图  

解释UML类图:
1.       首先看“动物”矩形框,它代表一个类。该类图分为三层,第一层显示类的名称,如果是抽象类就要用斜体显示。第二层是类的特性,通常就是字段和属性。第三层是类的操作,通常是方法和行为。注意前面的符号,‘+’表示public, ‘—’ 表示private, ‘#’表示protected.  
    [img]http://image4.360doc.com/DownloadImg/2009/4/14/10587_3131518_2.jpg   [/img]                                   
2.       “飞翔”矩形框表示一个接口图,它与类图的区别主要是顶端有《interface》显示,第一行是接口名称,第二行是接口方法。接口还有另一种表示方法,俗称棒棒糖表示法,就是唐老鸭类实现了“讲人话”的接口。  




interface IFly                               interface Ilanguage                             
{                                             {
   void Fly();                                    void Speak();
}                                             }


3.       动物,鸟,鸭,唐老鸭他们之间都是继承的关系,继承关系用空心三角形+实现来表示。  

                  


4.“大雁”实现了“飞翔”接口。实现接口用空心三角形+虚线来表示。(注:下面的图中应为空心三角形)



class Bird:Animal                      class WideGoose:IFly
{                                       {
   //继承动物类                                 //实现飞翔接口
}                                       }


5.       企鹅与气候有很大的关系,企鹅需要“知道”气候的变化,需要“了解”气候规律。当一个类“知道”另一个类时,可以用关联(association)关系。关联关系用实线箭头来表示。  
[img]http://image4.360doc.com/DownloadImg/2009/4/14/10587_3131518_6.jpg   [/img]

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


6.       “大雁”和“雁群”这两个类。大雁是群居动物,每只大雁都属于一个雁群,一个雁群可以有多只大雁。所以它们之间就满足聚合(Aggregation)关系。聚合表示一种弱的“拥有”关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。聚合关系用空心的菱形+ 实线箭头表示。
[img]http://image4.360doc.com/DownloadImg/2009/4/14/10587_3131518_7.jpg [/img]
class WideGooseAggregate
{
   private WideGoose[] arrayWideGoose;
   //在雁群WideGooseAggregate类中,有大雁数组对象arrayWideGoose
}


7.       “鸟”和“翅膀”这两个类。鸟和翅膀似整体和部分的关系,并且翅膀和鸟的生命周期是相同的,在这里鸟和其翅膀就是合成关系。合成(composition)是一种强的“拥有”关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样。合成关系用实心的的菱形+实线箭头来表示。另外,合成关系的连线两端还有一个数字“1”和数字“2”,,这被称为基数。表明这一端的类可以有几个实例,很显然,一个鸟应该有两支翅膀。如果一个类可能有无数个实例,则就用“n”来表示。关联关系,聚合关系也可以有基数的。

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


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


abstract class Animal
{
   public bolism(Oxygen oxygen,Water water)
   {
   }
}
分享到:
评论

相关推荐

    二手车交易网UML图

    二手车交易网UML图,基于Visio 2016开发的UML示例图。

    UML统一建模语言示例图_用例图

    统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言。UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML...

    myeclipse UML 示例

    【标签】"UML"是本次讨论的核心,UML2.0是目前广泛使用的版本,包括了类图、对象图、用例图、序列图、协作图、状态图、活动图、组件图、部署图等九种主要的图表类型。这些图表在软件开发的不同阶段扮演着不同角色,...

    uml类图示例

    图解UML知识的好图,初学UML者的绝佳材料

    统一建模语言UML图制作方法.[UML画图教程 各种UML图示例]

    UML类图 用例图 协作图 序列图 状态图 活动图 属性、事件和委托 继承 抽象类与抽象方法 接口 一对一关联 一对多关联 双向关联 聚集 组合 依赖 相互依赖的包

    UML 560 Sample

    **PG20211らゅ絛ㄒ**、**PG20211_example** 和 **PG20211いゅ絛ㄒ** 这些文件可能是UML示例图的组成部分,可能包含了不同类型的UML图实例,用于帮助学习者理解如何创建和解释这些图。通过对这些文件的深入研究,你...

    JS画UML图工具MyGraph整合例子

    因工作需求,从网上下载了MyGraph的源代码,与本地一个例子做了一个demo,目前已实现UML图形编辑、本地打开、保存功能(google浏览器已测) 部署到tomcat后,打开URL: ...即可使用

    UML.rar_UML建模_UML建模示例_site:www.pudn.com_uml

    **UML(统一建模语言)**是一种标准的图形化建模工具,广泛应用于软件工程领域,用于描述、可视化、构建和文档化软件系统。...通过深入研究这些示例,我们可以更好地掌握UML的各种图表和概念,提升软件设计能力。

    《Think in 大象》书中建模示例

    《Think in 大象》书中uml建模示例,Rose版本

    UML 精彩PPT 示例

    UML 精彩PPT 示例,可以看看

    第一大题uml图示例.vsdx

    第一大题uml图示例.vsdx

    简单UML画图例子

    在这个压缩包文件中,我们可以期待找到一些示例图或一个工具,演示了如何绘制和操作UML图的基本元素。 UML包括多种图表类型,如用例图、类图、序列图、协作图、状态图、活动图等。每个图表都有其特定的用途: 1. *...

    适用axure9的UML元件库

    包含UML活动图(流程图)、泳道图、状态图、用例图、类图、时序图六类常用图表元件及示例图,可快速、便捷地在Axure中进行产品建模分析。基于Axure的UML绘图元件库。可用于绘制UML用例图、流程图、时序图、泳道图、...

    大象UML-建模示例HTML版

    通过这份“大象UML-建模示例HTML版”资源,用户可以深入理解UML的各种图型,学习如何创建和解读这些图,从而更好地应用于实际项目中。同时,HTML格式的教程使得学习更加灵活,无论是在电脑还是移动设备上,都能...

    MVP模式在Android中的应用UML图

    MVP模式在Android中的应用UML图(应用于RecyclerView)高清图

    UML样例图 对象图 状态图 活动图

    **UML样例图、对象图、状态图和活动图详解** UML(统一建模语言)是一种标准化的图形建模语言,用于软件工程和其他领域,以可视化系统的设计和架构。以下是UML中几种关键图的详细介绍: 1. **用例图**: - 用例图...

    UML参考手册+面向对象设计UML实践(第2版)+UML图例子+23种经典设计模式UML类图汇总

    实际的UML图示例能展示理论在具体问题中的应用,让学习者能够通过实例加深对UML图表类型的理解。无论是对于复杂的交互关系,还是对于系统组件的部署情况,UML图例子都能提供直观的展示。通过观察和分析这些例子,...

    UML建模示例与步骤.ppt

    UML建模示例与步骤.ppt

    UML学习指导及简单示例

    《UML学习指导及简单示例》 UML(统一建模语言)是软件开发过程中的一种可视化工具,它用于描述、构建和文档化系统、软件和业务过程的结构和行为。UML是一种标准的建模语言,其目标是提供一个通用的语言,使得不同...

    UML简单示例介绍Uml 简单示例介绍,比较简单,权当入门看看吧。

    在UML中,用例图(Use Case Diagram)是描述系统参与者(Actor)与系统(System)之间交互的一种图表。例如,在"学生注册系统"中,管理员、学生和教授是参与者,而系统包括学生注册、课程管理、费用清单发送等功能。...

Global site tag (gtag.js) - Google Analytics