模块  java.base
软件包  java.lang.module

Class ModuleDescriptor.Opens

  • 实现的所有接口
    Comparable<ModuleDescriptor.Opens>
    Enclosing class:
    ModuleDescriptor

    public static final class ModuleDescriptor.Opensextends Objectimplements Comparable<ModuleDescriptor.Opens>

    由模块打开的包可能是合格的或不合格的。

    模块声明中的opens指令声明打开一个包以允许包中的所有类型,并且所有成员,而不仅仅是公共类型及其公共成员,由支持私有访问的API或绕过或禁止默认Java语言访问控制检查。

    从以下版本开始:
    9
    另请参见:
    ModuleDescriptor.opens()
    • 方法详细信息

      • isQualified

        public boolean isQualified()
        如果这是合格的打开,则返回 true
        结果
        true如果这是合格的打开
      • source

        public String source()
        返回包名称。
        结果
        包名称
      • targets

        public Set<String> targets()
        对于限定打开,返回打开包的非空且不可变的模块名称集。 对于不合格的打开,返回一个空集。
        结果
        目标模块名称集合或不合格打开,为空集
      • compareTo

        public int compareTo​(ModuleDescriptor.Opens that)
        比较此模块打开另一个。

        通过按字典顺序比较包名称来比较两个Opens对象。 如果包名称相等,那么修改集的比较方式与模块修饰符的比较方式相同(参见ModuleDescriptor.compareTo )。 如果包名相等且修饰符集相等,则比较目标模块集。 这是通过按升序对目标模块的名称进行排序,并根据它们的自然顺序,然后按字典顺序比较相应的元素来完成的。 如果集合的大小不同,并且较大的集合包含较小集合的所有元素,则较大集合被认为是较小集合的成功。

        Specified by:
        compareTo ,界面 Comparable<ModuleDescriptor.Opens>
        参数
        that - 模块打开以进行比较
        结果
        如果此模块打开,则为负整数,零或正整数小于,等于或大于给定模块打开
      • equals

        public boolean equals​(Object ob)
        测试此模块是否与给定对象相等。

        如果给定对象不是Opens则此方法返回false 如果两个Opens对象的修饰符集相等,则包名称相等且目标模块名称集相等。

        该方法满足Object.equals方法的一般合同。

        重写:
        equals在类 Object
        参数
        ob - 要与此对象进行比较的对象
        结果
        true if且且仅当给定对象是等于此模块依赖性的模块依赖性时
        另请参见:
        Object.hashCode()HashMap
      • toString

        public String toString()
        返回描述打开包的字符串。
        重写:
        toString在类 Object
        结果
        描述打开包的字符串