首页 理论教育UML与Java的映射:信息系统开发实践教程

UML与Java的映射:信息系统开发实践教程

【摘要】:类图最直接的成效可以通过正向工程直接转化为程序代码,本节以当前流行的面向对象的程序设计语言Java为例,讲解类图的各个元素从UML到Java的映射方式。在UML中定义类属性和方法时,可见性、参数列表、返回类型用适当的修饰符进行修饰。图9-16 依赖关系示例4.关联关系关联、聚合和组合转换方法相似,都是转化为作用域的一个变量。如图9-17所示,类“公司”和类“职员”存在关联关系,映射成Java代码如下所示。

类图最直接的成效可以通过正向工程直接转化为程序代码,本节以当前流行的面向对象的程序设计语言Java为例,讲解类图的各个元素从UML到Java的映射方式。

1.类

如图9-14所示,类的映射是在class关键字后面加上类的名字,类的属性和操作出现在类体中。在UML中定义类属性和方法时,可见性、参数列表、返回类型用适当的修饰符进行修饰。

978-7-111-47279-7-Chapter09-17.jpg

图9-14 类的映射方式

2.接口

接口的映射方式与类相似,不同的是用关键字“interface”修饰,并且接口中的方法都是抽象方法,只有方法签名,没有方法实现部分。如图9-15所示为接口的映射方式。

978-7-111-47279-7-Chapter09-18.jpg

图9-15 接口的映射方式

3.依赖关系

两个类具有依赖关系,可以通过以下两种方式体现:

●作为其他类的属性

●作为其他类方法的参数

如图9-16所示,人依赖螺钉旋具修机器,映射到Java的代码如下。

978-7-111-47279-7-Chapter09-19.jpg

图9-16 依赖关系示例

978-7-111-47279-7-Chapter09-20.jpg

978-7-111-47279-7-Chapter09-21.jpg

4.关联关系

关联、聚合和组合转换方法相似,都是转化为作用域的一个变量。但因为聚合和组合关系体现整体和部分的概念,所以只把作为部分角色的类用一个数组在整体类中体现。但根据关联关系的多重性,关联的两个类都会在对方类中有所体现。

如图9-17所示,类“公司”和类“职员”存在关联关系,映射成Java代码如下所示。

978-7-111-47279-7-Chapter09-22.jpg(www.chuimin.cn)

图9-17 关联关系示例

978-7-111-47279-7-Chapter09-23.jpg

978-7-111-47279-7-Chapter09-24.jpg

如图9-18所示,类“乐队”和类“成员”是聚合关系,映射为Java代码如下所示。

978-7-111-47279-7-Chapter09-25.jpg

图9-18 聚合关系示例

978-7-111-47279-7-Chapter09-26.jpg

978-7-111-47279-7-Chapter09-27.jpg

如图9-19所示,类“公司”和类“部门”是组合关系,映射为Java代码如下所示。

978-7-111-47279-7-Chapter09-28.jpg

图9-19 组合关系示例

978-7-111-47279-7-Chapter09-29.jpg

5.泛化关系

如图9-20所示,泛化关系转换为extends关键字。

978-7-111-47279-7-Chapter09-30.jpg

图9-20 泛化关系示例

6.实现关系

如图9-21所示,实现关系转换为implements关键字。

978-7-111-47279-7-Chapter09-31.jpg

图9-21 实现关系示例