包的概念和图形表示

包是把模型本身组织成层次结构的通用机制,它是一种概念上的东西,存在于开发阶段,在运行时中并不存在。

每个包都有一个区别于其他的包的独一无二的名称,这个名称可以是简单名,也可以是完整的限定名。如图所示: 包的名称

包的内部可以包含一些元素,这些元素可以是类、接口、组件、节点、用例和图,甚至是其他的包。

包拥有这些元素意味着这些元素声明在包中,如果这个包撤销的话,这些元素也会随之撤销。

同时,包相当于声明了一个命名空间,所有在包中的元素的名称都必须唯一,以避免产生命名冲突。

和类一样,包也有可见性,指明了包内的元素是否对外部可见。

包内的元素可以通过引入(import)和引入(export)的方式来达到共享。

引入关系把目标包内的可见性为公共的元素添加到进行引入的包的公共命名空间中。

引出是指包内的公共部分,这些部分可供其他可见该包的包引入。

包的引入和引出关系图示如下:
包的引入和引出

包的引入具备传递性。上图中,Client 引入了 Policies,Policies 引入了 GUI,所以 Client 就间接地引入了 GUI。

用户头像
登录后发表评论