模块 java.naming

接口 Name

所有父级接口:
Cloneable , Comparable<Object> , Serializable
所有已知的实现类:
CompositeName , CompoundName , LdapName

public interface Name extends Cloneable , Serializable , Comparable <Object >
Name 接口代表一个通用名称——一个有序的组件序列。它可以是复合名称(跨越多个名称空间的名称)或复合名称(在单个分层命名系统中使用的名称)。

Name 可以有不同的实现;例如,复合名称、URL 或特定于名称空间的复合名称。

名称的组成部分是编号的。具有 N 个组成部分的名称的索引范围从 0 到 N,但不包括 N。此范围可以写为 [0,N)。最重要的组件在索引 0 处。空名称没有组件。

此接口中的所有方法均不接受 null 作为名称或名称组件参数的有效值。同样,返回名称或名称组件的方法永远不会返回 null。

如果访问不是只读的,Name 的实例可能不会与并发多线程访问同步。

自从:
1.3
  • 字段摘要

    字段
    修饰符和类型
    Field
    描述
    static final long
    已弃用。
    接口中的 serialVersionUID 字段无效。
  • 方法总结

    修饰符和类型
    方法
    描述
    add(int posn, String comp)
    在此名称中的指定位置添加单个组件。
    add(String comp)
    将单个组件添加到此名称的末尾。
    addAll(int posn, Name n)
    在此名称中的指定位置按顺序添加名称的组成部分。
    addAll(Name suffix)
    将名称的组成部分按顺序添加到该名称的末尾。
    生成此名称的新副本。
    int
    将此名称与另一个名称进行比较以进行排序。
    boolean
    确定此名称是否以指定的后缀结尾。
    get(int posn)
    检索此名称的组件。
    检索此名称的组件作为字符串枚举。
    getPrefix(int posn)
    创建一个名称,其组件由该名称组件的前缀组成。
    getSuffix(int posn)
    创建一个名称,其组件由该名称中组件的后缀组成。
    boolean
    确定此名称是否为空。
    remove(int posn)
    从此名称中删除一个组件。
    int
    size()
    返回此名称中的组件数。
    boolean
    确定此名称是否以指定前缀开头。
  • 字段详细信息

    • serialVersionUID

      @Deprecated static final long serialVersionUID
      已弃用。
      接口中的 serialVersionUID 字段无效。不使用;没有替代品。
      设置为指示与该类的先前版本的序列化兼容性的类指纹。
      参见:
  • 方法详情

    • clone

      Object  clone()
      生成此名称的新副本。对该名称的组件的后续更改不会影响新副本,反之亦然。
      返回:
      这个名字的副本
      参见:
    • compareTo

      int compareTo(Object  obj)
      将此名称与另一个名称进行比较以进行排序。返回负整数、零或正整数,因为此名称小于、等于或大于给定名称。

      Object.equals() 一样,名称排序的概念取决于实现此接口的类。例如,排序可以基于名称组件的字典顺序。名称的特定属性,例如它如何处理大小写,可能会影响排序。一般来说,不同类别的两个名称可能不会进行比较。

      指定者:
      compareTo 在接口 Comparable<Object>
      参数:
      obj - 要比较的非空对象。
      返回:
      负整数、零或正整数,因为此名称小于、等于或大于给定名称
      抛出:
      ClassCastException - 如果 obj 不是可以与此名称进行比较的类型的 Name
      参见:
    • size

      int size()
      返回此名称中的组件数。
      返回:
      此名称中的组件数
    • isEmpty

      boolean isEmpty()
      确定此名称是否为空。空名称是零组件的名称。
      返回:
      如果此名称为空,则为 true,否则为 false
    • getAll

      Enumeration <String > getAll()
      检索此名称的组件作为字符串枚举。对该名称的更新枚举的影响未定义。如果名称的组成部分为零,则返回一个空(非空)枚举。
      返回:
      此名称的组件的枚举,每个组件都是一个字符串
    • get

      String  get(int posn)
      检索此名称的组件。
      参数:
      posn - 要检索的组件的从 0 开始的索引。必须在 [0,size()) 范围内。
      返回:
      索引位置的组件
      抛出:
      ArrayIndexOutOfBoundsException - 如果 posn 超出指定范围
    • getPrefix

      Name  getPrefix(int posn)
      创建一个名称,其组件由该名称组件的前缀组成。对该名称的后续更改不会影响返回的名称,反之亦然。
      参数:
      posn - 停止的组件的从 0 开始的索引。必须在 [0,size()] 范围内。
      返回:
      由 [0,posn) 范围内索引处的组件组成的名称。
      抛出:
      ArrayIndexOutOfBoundsException - 如果 posn 超出指定范围
    • getSuffix

      Name  getSuffix(int posn)
      创建一个名称,其组件由该名称中组件的后缀组成。对该名称的后续更改不会影响返回的名称,反之亦然。
      参数:
      posn - 从 0 开始的组件索引。必须在 [0,size()] 范围内。
      返回:
      由 [posn,size()) 范围内索引处的组件组成的名称。如果 posn 等于 size(),则返回一个空名称。
      抛出:
      ArrayIndexOutOfBoundsException - 如果 posn 超出指定范围
    • startsWith

      boolean startsWith(Name  n)
      确定此名称是否以指定前缀开头。如果名称 n 等于 getPrefix(n.size()) ,则它是一个前缀。
      参数:
      n - 要检查的名称
      返回:
      如果 n 是此名称的前缀,则为 true,否则为 false
    • endsWith

      boolean endsWith(Name  n)
      确定此名称是否以指定的后缀结尾。如果名称 n 等于 getSuffix(size()-n.size()) ,则它是一个后缀。
      参数:
      n - 要检查的名称
      返回:
      如果 n 是此名称的后缀,则为真,否则为假
    • addAll

      Name  addAll(Name  suffix) throws InvalidNameException
      将名称的组成部分按顺序添加到该名称的末尾。
      参数:
      suffix - 要添加的组件
      返回:
      更新后的名称(不是新名称)
      抛出:
      InvalidNameException - 如果 suffix 不是有效名称,或者添加组件会违反此名称的语法规则
    • addAll

      Name  addAll(int posn, Name  n) throws InvalidNameException
      在此名称中的指定位置按顺序添加名称的组成部分。在第一个新组件的索引处或之后具有此名称的组件向上移动(远离 0)以容纳新组件。
      参数:
      posn - 在此名称中添加新组件的索引。必须在 [0,size()] 范围内。
      n - 要添加的组件
      返回:
      更新后的名称(不是新名称)
      抛出:
      ArrayIndexOutOfBoundsException - 如果 posn 超出指定范围
      InvalidNameException - 如果 n 不是有效名称,或者添加组件会违反此名称的语法规则
    • add

      Name  add(String  comp) throws InvalidNameException
      将单个组件添加到此名称的末尾。
      参数:
      comp - 要添加的组件
      返回:
      更新后的名称(不是新名称)
      抛出:
      InvalidNameException - 如果添加 comp 会违反此名称的语法规则
    • add

      Name  add(int posn, String  comp) throws InvalidNameException
      在此名称中的指定位置添加单个组件。在新组件的索引处或之后具有此名称的组件向上移动一位(远离索引 0)以容纳新组件。
      参数:
      posn - 添加新组件的索引。必须在 [0,size()] 范围内。
      comp - 要添加的组件
      返回:
      更新后的名称(不是新名称)
      抛出:
      ArrayIndexOutOfBoundsException - 如果 posn 超出指定范围
      InvalidNameException - 如果添加 comp 会违反此名称的语法规则
    • remove

      Object  remove(int posn) throws InvalidNameException
      从此名称中删除一个组件。删除指定位置的该名称的组件。索引大于此位置的组件向下移动(朝向索引 0)一个。
      参数:
      posn - 要删除的组件的索引。必须在 [0,size()) 范围内。
      返回:
      移除的组件(字符串)
      抛出:
      ArrayIndexOutOfBoundsException - 如果 posn 超出指定范围
      InvalidNameException - 如果删除组件会违反名称的语法规则