Module  java.rmi
软件包  java.rmi.server

Class UID

  • All Implemented Interfaces:
    Serializable


    public final class UID
    extends Object
    implements Serializable
    A UID表示相对于在其上生成的主机或者16个 “知名”标识符中的一个,其随着时间而言是唯一的标识符。

    UID()构造函数可用于生成相对于其生成的主机而言随时间而言是唯一的标识符。 UID(short)构造函数可用于创建2 16个已知标识符之一。

    A UID实例包含三个基元值:

    • unique ,一个int唯一标识VM这UID产生在相对于它的主体和由表示的时间time值(的示例实现unique值将是一个进程标识符)用于阱,或零UID
    • time ,一个long等于一个时间(如通过返回System.currentTimeMillis()在该VM,这一) UID在一个公知的产生在世时,或零UID
    • count ,一个short区分UID在同一个VM中产生的time值相同的值

    独立生成的UID实例对于主机而言随着时间的推移是独一无二的,只要主机需要超过一毫秒重新启动并且其系统时钟从不被设置为反向。 可以通过将UID实例与唯一主机标识符(如IP地址)进行配对来构建全局唯一标识符。

    从以下版本开始:
    1.1
    另请参见:
    Serialized Form
    • 构造方法详细信息

      • UID

        public UID​()
        生成一个 UID ,它是相对于生成的 UID而言是独一无二的。
      • UID

        public UID​(short num)
        创建了“知名” UID 有2116 这样的知名ids。

        通过此构造函数创建的一个UID不会与通过no-arg构造函数生成的任何UID冲突。

        参数
        num - 着名的数字 UID
    • 方法详细信息

      • equals

        public boolean equals​(Object obj)
        将指定的对象与此UID进行比较以获得相等性。 此方法返回true当且仅当指定对象为UID实例具有相同uniquetimecount值作为这一个。
        重写:
        equals中的 Object
        参数
        obj - 对比这个 UID的对象
        结果
        true如果给定的对象相当于这个对象,而另外 false
        另请参见:
        Object.hashCode()HashMap
      • toString

        public String toString​()
        返回此 UID的字符串表示 UID
        重写:
        toStringObject
        结果
        这是 UID的字符串表示
      • read

        public static UID read​(DataInput in)
                        throws IOException
        构造并返回一个新的UID实例,通过从DataInput实例解组二进制表示。

        具体来说,该方法首先调用给定流的DataInput.readInt()方法来读取一个unique值,然后调用该流的DataInput.readLong()方法来读取一个time值,然后调用该流的DataInput.readShort()方法来读取一个count值,然后创建并返回一个新UID包含实例uniquetime ,并count从流中读取的值。

        参数
        in - DataInput实例,从 UID
        结果
        未编组 UID实例
        异常
        IOException - 执行此操作时是否发生I / O错误