统一建模语言简介
统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。
统一建模语言能为软件开发的所有阶段提供模型化和可视化支持。而且融入了软件工程领域的新思想、新方法和新技术,使软件设计人员沟通更简明,进一步缩短了设计时间,减少开发成本。它的应用领域很宽,不仅适合于一般系统的开发,而且适合于并行与分布式系统的建模。
UML 从目标系统的不同角度出发,定义了用例图、类图、对象图、状态图、活动图、时序图、协作图、构件图、部署图等 9 种图。
本文章主要介绍设计模式中经常用到的类图,以及类之间的关系。简单介绍 UML 建模工具的使用方法,当前业界使用最广泛的是 Rational Rose。使用 Umlet 的人也很多,它是一个轻量级的开源 UML 建模工具,简单实用,常用于小型软件系统的开发与设计。
1.描述一个类 (人类 Personnel) (其中有属性 ,年龄(age), 姓名(name), 性别(sex), 还有吃 (eat) 这个动作)
2.描述一个接口 (一个发送邮件的接口类,有验证邮件 (checkVerifyCode)和发送邮件 (sendVerificationCode) 2个方法)
3.接口与实现类之间的关系
4.依赖关系
//依赖关系 依赖(Dependency)关系是一种使用关系,它是对象之间耦合度最弱的一种关联方式,是临时性的关联。在代码中,某个类的方法通过局部变量、方法的参数或者对静态方法的调用来访问另一个类(被依赖类)中的某些方法来完成一些职责。
class B {//在B类中的没有A的属性,而是以形参的方式引入
public void test (A a) {
}
}
5 关联关系 [关联(Association)关系是对象之间的一种引用关系,用于表示一类对象与另一类对象之间的联系]
//class A {}
class C {//成员变量引入了A类
A a;
}
6 //聚合关系 [ 聚合(Aggregation)关系是关联关系的一种,是强关联关系,是整体和部分之间的关系,是 has-a 的关系。聚合关系也是通过成员对象来实现的,
//其中成员对象是整体对象的一部分,但是成员对象可以脱离整体对象而独立存在。 ]
//class A {}
class D {
A a;
public D(A a) {
this.a = a;
}
}
1
7. //组合关系 组合关系 contains a,关联关系较强,整体和部分是不可分割的,他们又共同的生命周期。
//class A {}
class E {
A a;
public E () {
a = new A();
}
}
1
8. //泛化关系 即是 父类与子类关系
//class A {}
class F extends A{}
7. //实现关系 即是接口与实现类的关系
interface G {}
class H implements G {}