JavaTM Platform
Standard Ed. 6

java.rmi.server
クラス ObjID

java.lang.Object
  上位を拡張 java.rmi.server.ObjID
すべての実装されたインタフェース:
Serializable

public final class ObjID
extends Object
implements Serializable

ObjID は、RMI ランタイムにエクスポートされたリモートオブジェクトを識別するために使用します。エクスポートしたリモートオブジェクトには、エクスポートに使用した API に応じて暗黙的または明示的にオブジェクト識別子が割り当てられます。  

一意のオブジェクト識別子を生成するには、ObjID() コンストラクタを使用します。そのような ObjID は、生成されたホスト上で常に一意になります。 「既知の」オブジェクト識別子を作成するには、ObjID(int) コンストラクタを使用します。既知の ObjID のスコープは、エクスポート先の RMI ランタイムによって異なります。  

ObjID のインスタンスには、オブジェクト番号 (long 型) とアドレス空間識別子 (UID 型) が含まれます。一意の ObjID では、アドレス空間識別子は特定のホストに関して常に一意です。既知の ObjID の場合、アドレス空間識別子は UID.UID(short) コンストラクタを呼び出したときに返される識別子と同じで、値は 0 です。  

システムプロパティー java.rmi.server.randomIDs が文字列「true」(大文字と小文字は区別されない) と定義されている場合、ObjID() コンストラクタは強力な暗号乱数ジェネレータを使用して、ObjID のオブジェクト番号を選択します。

導入されたバージョン:
JDK1.1
関連項目:
直列化された形式

フィールドの概要
static int ACTIVATOR_ID
          アクティベータの既知の ObjID に使用するオブジェクト番号です。
static int DGC_ID
          分散ガベージコレクタの既知の ObjID に使用するオブジェクト番号です。
static int REGISTRY_ID
          レジストリの既知の ObjID に使用するオブジェクト番号です。
 
コンストラクタの概要
ObjID()
          一意のオブジェクト識別子を生成します。
ObjID(int objNum)
          「既知の」オブジェクト識別子を生成します。
 
メソッドの概要
 boolean equals(Object obj)
          指定されたオブジェクトとこの ObjID が等しいかどうかを比較します。
 int hashCode()
          このオブジェクト識別子のハッシュコード値をオブジェクト番号として返します。
static ObjID read(ObjectInput in)
          ObjectInput インスタンスのバイナリ表現を非整列化して新しい ObjID インスタンスを構築し、そのインスタンスを返します。
 String toString()
          このオブジェクト識別子の文字列表現を返します。
 void write(ObjectOutput out)
          この ObjID のバイナリ表現を整列化して、ObjectOutput のインスタンスに書き込みます。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

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 に使用するオブジェクト番号です。

関連項目:
定数フィールド値
コンストラクタの詳細

ObjID

public ObjID()
一意のオブジェクト識別子を生成します。  

システムプロパティー java.rmi.server.randomIDs が文字列 "true" (大文字と小文字は区別されない) と定義されている場合、このコンストラクタは強力な暗号乱数ジェネレータを使用して、ObjID のオブジェクト番号を選択します。


ObjID

public ObjID(int objNum)
「既知の」オブジェクト識別子を生成します。  

このコンストラクタを使用して生成した ObjID は、引数を指定しないで生成した ObjID と重複することはありません。

パラメータ:
objNum - 既知のオブジェクト識別子に使用するオブジェクト番号
メソッドの詳細

write

public void write(ObjectOutput out)
           throws IOException
この ObjID のバイナリ表現を整列化して、ObjectOutput のインスタンスに書き込みます。  

このメソッドはまず、このオブジェクト識別子のオブジェクト番号を使用して、指定されたストリームの DataOutput.writeLong(long) メソッドを呼び出します。 次に、このストリームを使用して UID.write(DataOutput) メソッドを呼び出し、アドレス空間識別子を書き込みます。

パラメータ:
out - この ObjID の書き込み先の ObjectOutput インスタンス
例外:
IOException - この操作の実行中に入出力エラーが発生した場合

read

public static ObjID read(ObjectInput in)
                  throws IOException
ObjectInput インスタンスのバイナリ表現を非整列化して新しい ObjID インスタンスを構築し、そのインスタンスを返します。  

このメソッドはまず、指定されたストリームの DataInput.readLong() メソッドを呼び出して、オブジェクト番号を読み込みます。 次に、このストリームを使用して UID.read(DataInput) を呼び出し、アドレス空間識別子を読み込みます。 次に、ストリームから読み込んだオブジェクト番号とアドレス空間識別子を含む新しい ObjID インスタンスを作成し、そのインスタンスを返します。

パラメータ:
in - ObjID の読み取り元の ObjectInput インスタンス
戻り値:
非整列化された ObjID インスタンス
例外:
IOException - この操作の実行中に入出力エラーが発生した場合

hashCode

public int hashCode()
このオブジェクト識別子のハッシュコード値をオブジェクト番号として返します。

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクト識別子のハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

equals

public boolean equals(Object obj)
指定されたオブジェクトとこの ObjID が等しいかどうかを比較します。 このメソッドが true を返すのは、指定されたオブジェクトが ObjID インスタンスであり、かつこのオブジェクトと同じオブジェクト番号とアドレス空間識別子を持つ場合だけです。

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - この ObjID と比較するオブジェクト
戻り値:
指定されたオブジェクトがこのオブジェクトと一致する場合は true、一致しない場合は false
関連項目:
Object.hashCode(), Hashtable

toString

public String toString()
このオブジェクト識別子の文字列表現を返します。

オーバーライド:
クラス Object 内の toString
戻り値:
このオブジェクト識別子の文字列表現

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。