Enterprise Architect(画类图)

我们在画用例图的包下,在project browser视图下,点击第三个图标(new Diagram),打开选择页面--->左边栏中选择UML Behavioral--->右边栏中选择: Sequence。

类图元素:

例子:

_images/uml_class_struct.jpg

  • 车的类图结构为<<abstract>>,表示车是一个抽象类;
  • 它有两个继承类:小汽车和自行车;它们之间的关系为实现关系,使用带空心箭头的虚线表示;
  • 小汽车为与SUV之间也是继承关系,它们之间的关系为泛化关系,使用带空心箭头的实线表示;
  • 小汽车与发动机之间是组合关系,使用带实心箭头的实线表示;
  • 学生与班级之间是聚合关系,使用带空心箭头的实线表示;
  • 学生与身份证之间为关联关系,使用一根实线表示;
  • 学生上学需要用到自行车,与自行车是一种依赖关系,使用带箭头的虚线表示;

下面我们将介绍这六种关系;


类之间的关系

泛化关系(generalization)

类的继承结构表现在UML中为:泛化(generalize)与实现(realize):

继承关系为 is-a的关系;两个对象之间如果可以用 is-a 来表示,就是继承关系:(..是..)

eg:自行车是车、猫是动物

泛化关系用一条带空心箭头的直接表示;如下图表示(A继承自B);

_images/uml_generalization.jpg

eg:汽车在现实中有实现,可用汽车定义具体的对象;汽车与SUV之间为泛化关系;

_images/uml_generalize.jpg

注:最终代码中,泛化关系表现为继承非抽象类;

实现关系(realize)

实现关系用一条带空心箭头的虚线表示;

eg:”车”为一个抽象概念,在现实中并无法直接用来定义对象;只有指明具体的子类(汽车还是自行车),才 可以用来定义对象(”车”这个类在C++中用抽象类表示,在JAVA中有接口这个概念,更容易理解)

_images/uml_realize.jpg

注:最终代码中,实现关系表现为继承抽象类;

聚合关系(aggregation)

聚合关系用一条带空心菱形箭头的直线表示,如下图表示A聚合到B上,或者说B由A组成;

_images/uml_aggregation.jpg

聚合关系用于表示实体对象之间的关系,表示整体由部分构成的语义;例如一个部门由多个员工组成;

与组合关系不同的是,整体和部分不是强依赖的,即使整体不存在了,部分仍然存在;例如, 部门撤销了,人员不会消失,他们依然存在;

组合关系(composition)

组合关系用一条带实心菱形箭头直线表示,如下图表示A组成B,或者B由A组成;

_images/uml_composition.jpg

与聚合关系一样,组合关系同样表示整体由部分构成的语义;比如公司由多个部门组成;

但组合关系是一种强依赖的特殊聚合关系,如果整体不存在了,则部分也不存在了;例如, 公司不存在了,部门也将不存在了;

关联关系(association)

关联关系是用一条直线表示的;它描述不同类的对象之间的结构关系;它是一种静态关系, 通常与运行状态无关,一般由常识等因素决定的;它一般用来定义对象之间静态的、天然的结构; 所以,关联关系是一种“强关联”的关系;

比如,乘车人和车票之间就是一种关联关系;学生和学校就是一种关联关系;

关联关系默认不强调方向,表示对象间相互知道;如果特别强调方向,如下图,表示A知道B,但 B不知道A;

_images/uml_association.jpg

注:在最终代码中,关联对象通常是以成员变量的形式实现的;

依赖关系(dependency)

依赖关系是用一套带箭头的虚线表示的;如下图表示A依赖于B;他描述一个对象在运行期间会用到另一个对象的关系;

_images/uml_dependency.jpg

与关联关系不同的是,它是一种临时性的关系,通常在运行期间产生,并且随着运行时的变化; 依赖关系也可能发生变化;

显然,依赖也有方向,双向依赖是一种非常糟糕的结构,我们总是应该保持单向依赖,杜绝双向依赖的产生;

注:在最终代码中,依赖关系体现为类构造方法及类方法的传入参数,箭头的指向为调用关系;依赖关系除了临时知道对方外,还是“使用”对方的方法和属性;

 

_images/uml_class_struct.jpg

  • 2
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Enterprise Architect是一种用于描述系统中类和对象之间关系的形化表示方法。它可以帮助软件开发人员和系统设计师更好地理解和管理系统的结构和功能。通过使用Enterprise Architect,用户可以轻松地创建和编辑类、接口、枚举、属性、方法等元素,并将它们组织成层次结构,以便更好地描述系统的结构和行为。此外,Enterprise Architect还支持多种关系类型,如继承、实现、关联、聚合、组合等,以便更好地描述类之间的关系。 ### 回答2: Enterprise Architect是一种可视化建模工具,用于描述系统或应用程序中的对象、类、属性和它们之间的关系。通过这种形化表示,软件开发团队可以更容易地定义系统的需求、设计、开发和实现。这种建模工具通常使用UML标准,因为它提供了一种通用的语言来描述软件系统的不同方面。 在使用Enterprise Architect之前,需要先理解一些基本概念。类的主要元素包括类、属性、方法和关系。类是一个具体的实体,可以包含属性和方法。属性是类的特征或描述,描述了类的状态。方法是类的行为,描述了类的能力。关系描述了不同类之间的连接和交互。在一个Enterprise Architect中,可以使用箭头和线条来表示不同的关系类型,例如继承、关联、泛化、依赖和聚合等。 在使用Enterprise Architect时,开发人员可以定义类的结构和属性,同时描述类与类之间的关系和依赖。这样可以更好地理解软件系统的架构和设计,并提供更好的思路去分析和改善应用程序的结构和性能。 总之,Enterprise Architect是一个非常有用的建模工具,已经成为许多软件开发项目的标准工具。它可以帮助团队更好地定义和描述应用程序的对象和关系,从而提高软件开发的质量和效率。在设计和维护软件系统时,使用 Enterprise Architect可以大幅减少错误和提高可维护性,从而保证了软件项目顺利完成。 ### 回答3: Enterprise Architect是一款功能强大的建模工具,能够支持多种建模方法,如面向对象、数据流、BPMN等,并能够提供多种视,如类、时序、用例等。其中,类是一种用来描述系统中的类、对象、接口等元素之间关系的示工具。 在Enterprise Architect中,类可以通过界面操作或者代码编写的方式进行创建。在类中,我们可以看到类、Interface、Enumeration、package等元素以及它们之间的关系,如继承、关联、依赖、实现等。 其中,类是类中最重要的元素之一。一个类描述了一个对象拥有的属性和方法。在类中,类被表示为矩形,类名位于矩形的顶部,属性和方法则分别表示在矩形的中间和底部。 除此之外,类还可以用来表示继承、关联、依赖、实现等关系。例如,继承关系用实线和空心三角箭头来表示;关联关系用实线和普通箭头来表示;依赖关系用虚线和箭头来表示。 使用Enterprise Architect的类,可以帮助我们准确描述系统中各个类、对象、接口等元素之间的关系,从而实现对系统的模型化建设,提高开发效率和软件质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值