相关内容
最近更新
热门资讯
运城java编程开发类图与类的关系分析
时间:2020-05-22 来源:未知 作者:广州达内培训
类和接口的应用是程序员在学习软件编程开发技术的时候会经常使用的两种开发组成元素,而今天我们就通过案例分析来了解一下具体情况。
一、类图
类图(ClassDiagram)是用来显示系统中的类、接口、协作以及它们之间的静态结构和关系的一种静态模型,是我们Java猿帅们需要掌握的。它主要用于描述软件系统的结构化设计,帮助人们简化对软件系统的理解,它是系统分析与设计阶段的重要产物,也是系统编码与测试的重要模型依据。类图中的类可以通过某种编程语言直接实现。类图在软件系统开发的整个生命周期都是有效的,它是面向对象系统的建模中常见的图。
二、类之间的关系
在软件系统中,类不是孤立存在的,类与类之间存在各种关系。根据类与类之间的耦合度从弱到强排列,UML中的类图有以下几种关系:依赖关系、关联关系、聚合关系、组合关系、泛化关系和实现关系。其中泛化和实现的耦合度相等,它们是强的。
1.依赖关系
只要在类中用到了对方,那么他们之间存在依赖关系,依赖(Dependency)关系是一种使用关系,它是对象之间耦合度弱的一种关联方式,是临时性的关联。在代码中,某个类的方法通过局部变量、方法的参数或者对静态方法的调用来访问另一个类(被依赖类)中的某些方法来完成一些职责。在UML类图中,依赖关系使用带箭头的虚线来表示,箭头从使用类指向被依赖的类
2.关联关系
关联(Association)关系是对象之间的一种引用关系,用于表示一类对象与另一类对象之间的联系,如老师和学生、师傅和徒弟、丈夫和妻子等。关联关系是类与类之间常用的一种关系,分为一般关联关系、聚合关系和组合关系。
3.聚合关系
聚合(Aggregation)关系表示的是整体和部分的关系,是has-a的关系,整体与部分可以分开,是关联关系的特例,是强关联关系。聚合关系也是通过成员对象来实现的,其中成员对象是整体对象的一部分,但是成员对象可以脱离整体对象而独立存在。例如,学校与老师的关系,学校包含老师,但如果学校停办了,老师依然存在。
4.组合关系
组合(Composition)关系也是关联关系的一种特例,也表示类之间的整体与部分的关系,但它是一种更强烈的聚合关系,不可以分开,是cxmtains-a关系。在组合关系中,整体对象可以控制部分对象的生命周期,一旦整体对象不存在,部分对象也将不存在,部分对象不能脱离整体对象而存在。例如,公司和部门。
5.泛化关系
泛化(Generalization)关系是对象之间耦合度大的一种关系,表示一般与特殊的关系,是父类与子类之间的关系,是一种继承关系,是is-a的关系。在UML类图中,泛化关系用带空心三角箭头的实线来表示,箭头从子类指向父类。在代码实现时,使用面向对象的继承机制来实现泛化关系。
6.实现关系
实现(Realization)关系是接口与实现类之间的关系。在这种关系中,类实现了接口,类中的操作实现了接口中所声明的所有的抽象操作。在UML类图中,实现关系使用带空心三角箭头的虚线来表示,箭头从实现类指向接口。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。