接口

一、接口及其图形表示

接口是一组操作的集合,其中的每个操作用于描述类或组件的一个服务。

(一)接口的名称

每个接口都有一个唯一的名称。
名称由两部分组成:

  • 简单名。即接口自身的标识符。
  • 路径名。即接口所在的包的名称。

简单名和路径名通过冒号(:)连接,以下是接口名称图形表示: UML 接口名称
由上图可见,接口名称可以省略路径名,以简写的方式展示。

(二)接口的操作

接口是一组已命名的操作,但是接口并不负责这些操作的具体实现。

接口的操作只是一种约定,类或组件提供一组方法来实现这些约定的操作。

像类一样,接口的操作也可以用可见性、范围、标记值、并发性来修饰。

操作的图形表示如下,和类的图形表示很相似,属于类的一种衍型:
UML 接口的操作 接口的操作可以仅仅显示操作的名称,也可以显示出接口的特性(可见性、范围、并发性等等)。

衍型是对UML词汇的扩展,用于创建与已有的构造块相似但针对特定问题的新种类的构造块。在图形上,把衍型表示成用双尖括号(<<>>)括起来的名字,放在其他元素名之上。

(三)供接口和需接口

接口是类或组件之间的约定。

对于一个接口来说,它可能是 A 组件提供的,B 组件需要的。所以,对于 A 来说,这个接口称之为供接口,对于 B 来说,这个接口称之为需接口

但不管怎样,供接口和需接口只是相对于类或组件来说的,接口的定义始终只有一个。

供接口和需接口有两种表现形式,一种是简单形式,一种是展开形式。图示如下: UML 供接口和需接口

由上图可见,供接口一方提供了接口的具体实现。

二、接口在系统中的意义

在一个系统中,实现关注分离是非常重要的,这意味着系统中各个部分可以相对独立,在系统演化的过程中,一个部分的变化不会影响到另一个部分。

要达到这种分离程度,一个重要方法就是清楚地描述系统中的接缝,在独立变化的部分之间划出界线。

在 UML 中,用接口对系统中的接缝建模。接口订立了一个合约,而合约的供给方和需求方都可以独立变化,只要它们遵循合约即可。

所以说,接口可以实现关注分离,降低部分之间的耦合,从而将一个复杂庞大的系统问题“分而治之”。

用户头像
登录后发表评论