专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 类与类之间关系

类与类之间关系

更新时间:2020-09-22 17:03:48 来源:动力节点 浏览1344次

Java语言能成为计算机语言中使用最为广泛的一种,有很大一部分原因是因为面向对象,那么在编程中要想创建对象就必须先创建类,在面向对象的程序设计中,理清楚类与类之间关系,画出清晰的类图,有助于java程序员快速提升程序开发的效率。

类是现实世界当中具有共同特征的事物进行抽象形成的模板或概念,对象是实际存在的个体。例如:“汽车”就是一个类,“你家的那个汽车”就是一个真实存在的对象。理解java类与对象,有助于对类和类之间关系的学习。

在类与类之间,最常见的关系有三种,分别是依赖(“uses-a”);聚合(“has-a”);继承(“is-a”),下面对这三种类与类之间关系进行说明:

1、依赖,即“uses-a"关系,是一种最明显的、最常见的关系。例如,Order类使用Account类是因为Order对象需要访问Account对象查看信用状态。但是Item 类不依赖于Account类,这是因为Item对象与客户账户无关。因此,如果一个类的方法操纵另一个类的对象,我们就说一个类依赖于另一个类。

应该尽可能地将相互依赖的类减至最少,如果类A不知道类B的存在,那么它就不会关心类B的任何改变,这意味着类B的改变不会使类A产生任何bug,用软件工程的术语来说,就是使类之间的耦合度最小。

2、聚合,即“has_a”关系,是一种实在且易于理解的关系。例如,一个Order对象包含一些Item对象。聚合关系意味着类A的对象包含类B的对象。

3、继承,即“is-a”关系,是一种用来表示特殊与一般关系的。例如,RushOrder类由Order类继承而来。在具有特殊性的RushOrder类中包含了一些用于优先处理的特殊方法,以及一个计算运费的不同方法;而其他的方法,如添加条目、生成账单等等都是从Order类继承来的。一般而言,如果类A扩展类B,类A不但包含从类B继承的方法,还会有一些额外的功能。

很多程序员都使用UML (Unified Modeling Language)绘制描述类之间关系的类图。下图就是这样一个例子,类用矩形表示,类之间的关系用带有各种修饰的箭头表示。

image.png

下面给出了UML中最常见的箭头样式,是表达类关系的UML符号:

image.png

类与类之间关系最常见的就是这三种,当然除了依赖、聚合、继承这三种关系外,还有组合和关联等关系,希望大家可以先把这篇文章介绍的常见三种类与类之间关系的内容掌握好,通过这几种关系能帮助我们在设计类时能够理顺思路,在实现上少走弯路,进行java开发时更顺利。


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>