java.lang.Object
java.rmi.server.ObjID
- 所有已实现的接口:
-
Serializable
一个
ObjID
用于标识导出到RMI运行时的远程对象。当导出远程对象时,根据用于导出的API,它会被隐式或显式地分配一个对象标识符。
ObjID()
构造函数可用于生成唯一的对象标识符。这样的ObjID
在生成它的主机上随时间是唯一的。ObjID(int)
构造函数可用于创建一个“众所周知”的对象标识符。众所周知的ObjID
的范围取决于它导出到的RMI运行时。
ObjID
实例包含一个对象编号(类型为long
)和一个地址空间标识符(类型为UID
)。在唯一的ObjID
中,地址空间标识符相对于给定主机随时间是唯一的。在众所周知的ObjID
中,地址空间标识符等同于通过使用值为零调用UID(short)
构造函数返回的标识符。
如果系统属性java.rmi.server.randomIDs
定义为等于字符串"true"
(不区分大小写),那么ObjID()
构造函数将使用密码强随机数生成器来选择返回的ObjID
的对象编号。
- 自 JDK 版本:
- 1.1
- 参见:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
激活器的众所周知ObjID
的对象编号。static final int
分布式垃圾收集器的众所周知ObjID
的对象编号。static final int
注册表的众所周知ObjID
的对象编号。 -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
将指定的对象与此ObjID
进行比较以检查是否相等。int
hashCode()
返回此对象标识符(对象编号)的哈希码值。static ObjID
read
(ObjectInput in) 通过从ObjectInput
实例解组二进制表示来构造并返回一个新的ObjID
实例。toString()
返回此对象标识符的字符串表示形式。void
write
(ObjectOutput out) 将此ObjID
的二进制表示编组到一个ObjectOutput
实例。
-
Field Details
-
REGISTRY_ID
public static final int REGISTRY_ID注册表的众所周知ObjID
的对象编号。- 参见:
-
ACTIVATOR_ID
public static final int ACTIVATOR_ID激活器的众所周知ObjID
的对象编号。- 参见:
-
DGC_ID
public static final int DGC_ID分布式垃圾收集器的众所周知ObjID
的对象编号。- 参见:
-
-
Constructor Details
-
ObjID
public ObjID()生成一个唯一的对象标识符。如果系统属性
java.rmi.server.randomIDs
定义为等于字符串"true"
(不区分大小写),则此构造函数将使用密码强随机数生成器来选择返回的ObjID
的对象编号。 -
ObjID
public ObjID(int objNum) 创建一个“众所周知”的对象标识符。通过此构造函数创建的
ObjID
不会与通过无参数构造函数生成的任何ObjID
发生冲突。- 参数:
-
objNum
- 众所周知对象标识符的对象编号
-
-
Method Details
-
write
将此ObjID
的二进制表示编组到一个ObjectOutput
实例。具体来说,此方法首先使用此对象标识符的对象编号调用给定流的
DataOutput.writeLong(long)
方法,然后通过调用其UID.write(DataOutput)
方法与流写入其地址空间标识符。- 参数:
-
out
- 要将此ObjID
写入的ObjectOutput
实例 - 抛出:
-
IOException
- 如果执行此操作时发生I/O错误
-
read
通过从ObjectInput
实例解组二进制表示来构造并返回一个新的ObjID
实例。具体来说,此方法首先调用给定流的
DataInput.readLong()
方法读取一个对象编号,然后通过调用UID.read(DataInput)
与流读取一个地址空间标识符,然后创建并返回一个包含从流中读取的对象编号和地址空间标识符的新ObjID
实例。- 参数:
-
in
- 从中读取ObjID
的ObjectInput
实例 - 返回:
-
解组的
ObjID
实例 - 抛出:
-
IOException
- 如果执行此操作时发生I/O错误
-
hashCode
public int hashCode()返回此对象标识符(对象编号)的哈希码值。 -
equals
将指定的对象与此ObjID
进行比较以检查是否相等。如果指定的对象是具有与此对象相同的对象编号和地址空间标识符的ObjID
实例,则此方法返回true
。 -
toString
返回此对象标识符的字符串表示形式。
-