该模块 是代码,数据和资源的集合。这是一组相关的包和类型,如类,抽象 类和接口 的代码,数据文件,以及一些静态资源。
以下是模块的一些特征。
一个模块必须定义一个用于与其他模块通信的接口 。
模块定义了模块 接口 和模块 实现之间的分隔。
一个模块显示了一组包含信息的属性。
两个或多个模块嵌套 在一起。
模块有一个清晰的,确定 责任。每个功能仅由一个 模块实现。
一个模块必须能够独立于其他模块进行测试。
模块中的错误无法传播到其他模块。
如果我们有两个模块:M1 和M2 以及一个模块中的一个包 。我们希望在模块M1中可以访问M2 称为Pkg2,那么必须满足以下条件:
模块 M1 依赖于模块M2,然后模块 M1可以在其声明中指定“需要”模块M2。
模块 M2 导出软件包Pkg2,以使其可用于依赖它的模块。在模块M2的声明中,我们可以指定它 “导出”包Pkg2。