|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.rmi.server.UID
public final class UID
UID 表示一个和生成它的主机的时间有关的唯一标识符,或者是 216 个“熟知”标识符之一。
UID() 构造方法可以用来生成一个和生成此标识符的主机的时间有关的唯一标识符。UID(short) 构造方法可以用来创建 216 个熟知标识符之一。
UID 实例包含以下三个基本值:
unique,它是一个 int 值,唯一标识在其中生成此 UID 的 VM,并和主机和由 time 值表示的时间有关,(unique 值的示例实现是一个进程标识符),对于熟知 UID 此值为 0。
time,它是一个 long 值,其等于此 UID 在其中生成的 VM 处于活动状态时的时间(由 System.currentTimeMillis() 返回),对于熟知 UID 为 0。
count,它是一个 short值,以区分用同一 time 值在同一个 VM 中生成的 UID。
单独生成的 UID 实例具有唯一性并和生成它的主机的时间有关,条件是主机启动所需时间超过一毫秒,并且系统时钟从不向后调。可以通过将唯一主机标识符(如 IP 地址)和 UID 实例配对来构造全局唯一标识符。
| 构造方法摘要 | |
|---|---|
UID()
生成一个 UID,它和生成它的主机的时间有关且具有唯一性。 |
|
UID(short num)
创建一个“熟知” UID。 |
|
| 方法摘要 | |
|---|---|
boolean |
equals(Object obj)
比较给定对象与此 UID 的相等性。 |
int |
hashCode()
返回此 UID 的哈希码值。 |
static UID |
read(DataInput in)
通过从 DataInput 实例解组二进制表示形式构造并返回一个新的 UID。 |
String |
toString()
返回此 UID 的字符串表示形式。 |
void |
write(DataOutput out)
将此 UID 的二进制表示形式编组为一个 DataOutput 实例。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| 构造方法详细信息 |
|---|
public UID()
UID,它和生成它的主机的时间有关且具有唯一性。
public UID(short num)
UID。
可能有 216 个这样的熟知 ID。
通过此构造方法创建的 UID 将不与通过无参数构造方法生成的所有 UID 冲突。
num - 表示熟知 UID 的数字| 方法详细信息 |
|---|
public int hashCode()
UID 的哈希码值。
Object 中的 hashCodeUID 的哈希码值Object.equals(java.lang.Object),
Hashtablepublic boolean equals(Object obj)
UID 的相等性。
当且仅当指定对象为具有与此对象相同的 unique、time 和 count 值的 UID 实例时,此方法返回 true。
Object 中的 equalsobj - 要与此 UID 比较的对象
true;否则返回 falseObject.hashCode(),
Hashtablepublic String toString()
UID 的字符串表示形式。
Object 中的 toStringUID 的字符串表示形式
public void write(DataOutput out)
throws IOException
UID 的二进制表示形式编组为一个 DataOutput 实例。
需要特别说明的是,此方法首先要用此 UID 的 unique 值调用给定流的 DataOutput.writeInt(int) 方法,然后用 UID 的 time 值调用该流的 DataOutput.writeLong(long) 方法,接着用此 UID 的 count 值调用该流的 DataOutput.writeShort(int) 方法。
out - 要将此 UID 写入其中的 DataOutput 实例
IOException - 如果在执行此操作时发生 I/O 错误
public static UID read(DataInput in)
throws IOException
DataInput 实例解组二进制表示形式构造并返回一个新的 UID。
需要特别说明的是,此方法首先要调用给定流的 DataInput.readInt() 方法来读取 unique 值,然后调用该流的 DataInput.readLong() 方法来读取 time 值,接着调用该流的 DataInput.readShort() 方法来读取 count 值,接下来创建并返回一个包含从该流中读取的 unique、time 和 count 值的 UID 实例。
in - 要从中读取 UID 的 DataInput 实例
UID 实例
IOException - 如果在执行此操作时发生 I/O 错误
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。