[UML]UML系列——类图class的依赖关系

简介:

相关文章   

      [UML]UML系列——用例图Use Case

      [UML]UML系列——用例图中的各种关系(include、extend)

      [UML]UML系列——类图Class

      [UML]UML系列——类图class的关联关系(聚合、组合)

依赖关系的概念与符号

       依赖表示一个类以某种形式依赖于其他类。当两个类处于依赖关系中时,其中一个类的改变可能会影响另一个类。

       符号:

 

依赖关系在代码中的表现

      在程序代码中,依赖关系意味着一个类的对象出现在另一个类的操作中。常见的有两种情况:一个类将另一个类的对象作为自己某个操作的参数(形参),或者是操作的局部变量。

      程序演示:code/train

复制代码
 1  class train
 2     {
 3         public string number;
 4 
 5         public train(string num)
 6         {
 7             number = num;
 8         }
 9 
10         public void run()
11         {
12             Console.WriteLine("列车启动……列车到站");
13         }
14     }
复制代码
复制代码
 1  class person
 2     {
 3         public string name;
 4         public person(string name)
 5         {
 6             this.name=name;
 7         }
 8         public void GoToBeijing(train mytrain)  //从河南到北京
 9         {
10             Console.Write(name+"去北京乘坐{0}列车:",mytrain.number);
11             mytrain.run();
12         }
13         public void GoToHenan()   //从北京到河南
14         {
15             train mytrain = new train("1488"); 
16             Console.Write(name + “去河南乘坐{0}列车:", mytrain.number);
17             mytrain.run();
18         }
19     }
复制代码
复制代码
 1  class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             person person1 = new person("张三");
 6             person person2 = new person("李四");
 7 
 8             train train1 = new train("1487次"); //河南到北京
 9         train train2 = new train(“1488次”); //河南到北京
10         person1.GoToBeijing(train1);
11             person2.GoToBeijing(train2);
12             person1.GoToHenan();
13             person2.GoToHenan();
14         }
15     }
复制代码

      对应的类图:

 

依赖关系与关联关系的区别

       1、符号和在代码中的区别

 

      2、语义上的区别

      当一个类的实例与另一个类的一些特定实例存在固定的对应关系时,这两个类之间为关联关系。

      只要一个类用到另一个类,但是和另一个类的关系不是太明显的时候(可以说是用到了那个类),就可以把这种关系看成是依赖,依赖也可以说是一种偶然的关系。

      比如上面的人和火车的关系:在某个方法中偶然用到了它,但在现实中我和它并没多大关系。

总结

      依赖关系还是比较好理解的,注意和关联关系的区别及符号的表示方式不同,一个用虚箭头,一个用实箭头。

      今天就比较累,就写到这里吧.......后面将介绍泛化关系,及泛化关系的应用——多态

 

 

博客地址: http://www.cnblogs.com/wolf-sun/
博客版权: 本文以学习、研究和分享为主,欢迎转载,但必须在文章页面明显位置给出原文连接。
如果文中有不妥或者错误的地方还望高手的你指出,以免误人子弟。如果觉得本文对你有所帮助不如【推荐】一下!如果你有更好的建议,不如留言一起讨论,共同进步!
再次感谢您耐心的读完本篇文章。

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