|
Java Debug Interface | ||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
ターゲット VM 内のオブジェクトの型です。ReferenceType には、Java 言語仕様に定義されたクラス、インタフェース、および配列型が含まれます。それぞれの型には、対応するサブインタフェースがあります。VM では、これらの 3 つの型のすべての Class オブジェクトが生成されます。VM 側では、各 ReferenceType は異なる Class オブジェクトにマップされます。
ReferenceType を取得するには、特定の ObjectReference
にその型を照会するか、VirtualMachine
からすべての参照型のリストを取得します。
ReferenceType を使用して、メソッドやフィールドなどの静的な型の情報、または対応する Class オブジェクトやクラスローダなどの動的な型の情報にアクセスすることができます。
ObjectReference
,
ObjectReference.referenceType()
,
VirtualMachine
,
VirtualMachine.allClasses()
メソッドの概要 | |
java.util.List |
allFields()
この型、そのスーパークラス、実装インタフェース、およびスーパーインタフェース、あるいはそのいずれかで宣言された各 Field を含むリストを返します。 |
java.util.List |
allLineLocations()
この参照型内の各実行可能なソース行に対して Location オブジェクトを返します。 |
java.util.List |
allMethods()
この型、そのスーパークラス、実装インタフェース、およびスーパーインタフェース、あるいはそのいずれかで宣言された各 Method を含むリストを返します。 |
ClassLoaderReference |
classLoader()
この型に対応するクラスをロードしたクラスローダのオブジェクトを取得します。 |
ClassObjectReference |
classObject()
ターゲット VM 内でこの型に対応するクラスオブジェクトを返します。 |
boolean |
equals(java.lang.Object obj)
指定された Object とこの ReferenceType が等しいかどうか比較します。 |
boolean |
failedToInitialize()
この型の初期化が失敗したかどうかを判定します。 |
Field |
fieldByName(java.lang.String fieldName)
指定されたあいまいでない名前で可視 Field を検索します。 |
java.util.List |
fields()
この型で宣言された各 Field を含むリストを返します。 |
Value |
getValue(Field field)
この型内の指定の static Field の Value を取得します。 |
java.util.Map |
getValues(java.util.List fields)
指定のリスト中の各 static Field の Value を含むマップを返します。 |
int |
hashCode()
この ObjectReference のハッシュコード値を返します。 |
boolean |
isAbstract()
この型が abstract として宣言されたかどうかを判定します。 |
boolean |
isFinal()
この型が final として宣言されたかどうかを判定します。 |
boolean |
isInitialized()
この型が初期化されているかどうかを判定します。 |
boolean |
isPrepared()
この型が準備されているかどうかを判定します。 |
boolean |
isStatic()
この型が static として宣言されたかどうかを判定します。 |
boolean |
isVerified()
この型が検証されているかどうかを判定します。 |
java.util.List |
locationsOfLine(int lineNumber)
指定された行番号にマップされた Location オブジェクトがすべて含まれる List を返します。
|
java.util.List |
methods()
この型で直接宣言された各 Method のリストを返します。 |
java.util.List |
methodsByName(java.lang.String name)
指定された名前を持つ各可視 Method を含む List を返します。 |
java.util.List |
methodsByName(java.lang.String name,
java.lang.String signature)
指定の名前とシグニチャーを持つ各可視 Method を含むリストを返します。 |
java.lang.String |
name()
この型の完全修飾名を取得します。 |
java.util.List |
nestedTypes()
この型内に宣言された各 ReferenceType の List を返します。 |
java.lang.String |
sourceName()
この型の宣言に対応するソースの識別名を取得します。 |
java.util.List |
visibleFields()
この型の各 Field を含むリストを返します。 |
java.util.List |
visibleMethods()
この型によって宣言された、または継承された各 Method のリストを返します。 |
インタフェース com.sun.jdi.Type から継承したメソッド |
signature |
インタフェース com.sun.jdi.Mirror から継承したメソッド |
toString, virtualMachine |
インタフェース java.lang.Comparable から継承したメソッド |
compareTo |
インタフェース com.sun.jdi.Accessible から継承したメソッド |
isPackagePrivate, isPrivate, isProtected, isPublic, modifiers |
メソッドの詳細 |
public java.lang.String name()
プリミティブクラスの場合、返される名前は対応するプリミティブ型の名前です。たとえば、java.lang.Integer#TYPE
によって表されるクラスの名前は「int」として返されます。
Type
内の name
ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public ClassLoaderReference classLoader()
ClassLoaderReference
。クラスがブートストラップクラスローダによってロードされた場合は nullObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.lang.String sourceName() throws AbsentInformationException
リファレンス実装では、返される文字列は、この型の宣言を含むソースファイルの非修飾名です。
AbsentInformationException
- ソース名が不明の場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean isStatic()
java.lang.Integer#TYPE
など) の場合は、false
が返されます。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean isAbstract()
java.lang.Integer#TYPE
など) の場合は、戻り値は未定義です。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean isFinal()
ArrayType
、および java.lang.Integer#TYPE
などのプリミティブクラスの場合は、戻り値は常に true です。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean isPrepared()
java.lang.Integer#TYPE
) の場合は、戻り値は未定義です。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean isVerified()
java.lang.Integer#TYPE
) の場合は、戻り値は未定義です。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean isInitialized()
InterfaceType
の場合は、 このメソッドは常に isPrepared()
と同じ値を返します。配列およびプリミティブクラス (java.lang.Integer#TYPE
など) の場合は、戻り値は未定義です。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public boolean failedToInitialize()
java.lang.Integer#TYPE
など) の場合は、戻り値は未定義です。true
、それ以外の場合は falseObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List fields()
Field
を含むリストを返します。継承されたフィールドは、含まれません。コンパイラによって作成された合成フィールドがある場合は、そのフィールドもこのリストに含まれます。Field
オブジェクトのリスト。フィールドが存在しない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List visibleFields()
Field
を含むリストを返します。ただし、隠しフィールドおよびあいまいなフィールドは含まれません。このクラスまたはそのインスタンスから、単純名でアクセスできる各フィールドが含まれます。あいまいに多重継承されたフィールド、つまりあとで継承されたクラスの同じ名前のフィールドによって隠されたフィールドには、単純名でアクセスすることはできません。このようなフィールドは、返されるリストにも含まれません。その他の継承されたフィールドは、すべてこのリストに含まれます。詳細は、Java 言語仕様のセクション 8.3 を参照してください。Field
オブジェクトの List。可視フィールドが存在しない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List allFields()
Field
を含むリストを返します。隠しフィールドおよび多重継承されたフィールドを含め、宣言されたフィールドおよび継承されたフィールドをすべて返します。Field
オブジェクトの List。フィールドが存在しない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public Field fieldByName(java.lang.String fieldName)
Field
を検索します。このメソッドは、Java 言語仕様のセクション 8.3.3 に指定された継承規則に従って可視性を判断します。目的のフィールドの名前を含む文字列
- Field
オブジェクト。指定の名前のフィールドがない場合、または指定の名前があいまいな場合は nullClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List methods()
Method
のリストを返します。継承されたメソッドは、含まれません。このリストには、コンストラクタ、初期化メソッド (ある場合)、およびコンパイラによって作成された合成メソッドが含まれます。Method
オブジェクトのリスト。メソッドが存在しない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List visibleMethods()
Method
のリストを返します。隠されたまたはオーバライドされた、スーパークラスまたはスーパーインタフェースからのメソッドは含まれません。
ただし返されるリストには、同じシグニチャーを持つ多重継承メソッドが含まれることがありますが、ClassType
のメンバが複数含まれることはありません。詳細は、Java 言語仕様のセクション 8.4.6 を参照してください。
Method
オブジェクトの List。可視メソッドが存在しない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List allMethods()
Method
を含むリストを返します。隠しフィールドおよびオーバライドされたフィールドを含め、宣言されたフィールドおよび継承されたフィールドをすべて返します。Method
オブジェクトの List。メソッドが存在しない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List methodsByName(java.lang.String name)
Method
を含む List を返します。オーバーロードされたメソッドを検索するときによく使用します。
オーバーライドされたメソッドおよび隠されたメソッドは、含まれません。詳細は、Java 言語仕様のセクション 8.4.6 を参照してください。
name
- 検索対象のメソッドの名前Method
オブジェクトの List。一致するメソッドが見つからない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List methodsByName(java.lang.String name, java.lang.String signature)
Method
を含むリストを返します。シグニチャー文字列は、ターゲットメソッドの JNI シグニチャーです。
()V
([Ljava/lang/String;)V
(IIII)Z
このリストには、ClassType
の構成要素である具象メソッドが複数含まれることはありません。このリスト内のその他のメソッドは、abstract メソッドです。 一致する具象メソッドだけを取り出すには、ClassType.concreteMethodByName(java.lang.String, java.lang.String)
を使用します。
name
- 検索対象のメソッドの名前signature
- 検索対象のメソッドのシグニチャーMethod
オブジェクトの List。一致するメソッドが見つからない場合は、リストの長さはゼロになるClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List nestedTypes()
ReferenceType
の List を返します。静的な入れ子になった型と、静的でない入れ子になった型 (つまり、内部型) の両方が含まれます。この参照型内のコードブロックに宣言されたローカル内部型も、返されるリストに含まれます。ReferenceType
オブジェクトの List。入れ子になった型がない場合は、リストの長さはゼロになるObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public Value getValue(Field field)
Field
の Value
を取得します。Field は、この型に対して有効である必要があります。つまり、Field は、この型、スーパークラス、スーパーインタフェース、または実装インタフェースで宣言されている必要があります。sig
- 要求された値を含むフィールドValue
java.lang.IllegalArgumentException
- このフィールドが、このオブジェクトのクラスに無効である場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.Map getValues(java.util.List fields)
Field
の Value
を含むマップを返します。Field は、この型に対して有効である必要があります。つまり、Field は、この型、スーパークラス、スーパーインタフェース、または実装インタフェースで宣言されている必要があります。fields
- 要求された値を含む Field
オブジェクトのリストField
オブジェクトとその Value
のマップjava.lang.IllegalArgumentException
- このオブジェクトのクラスに無効なフィールドがある場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合VMMismatchException
- Mirror
引数とこのミラーが同じ VirtualMachine
に属さない場合public ClassObjectReference classObject()
ClassObjectReference
ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List allLineLocations() throws AbsentInformationException
Location
オブジェクトを返します。各位置では、特定のソース行がコードインデックスの特定の範囲にマップされています。この範囲の開始点は、Location.codeIndex()
によって調べることができます。コンパイラまたは VM 、あるいはその両方によって、連続していない 2 つ以上のコードインデックスの範囲に特定の行がマップされていることがあります。この場合は、1 つの行に複数の位置が含まれたリストが返されます。 同じソース行が、「複数の」メソッド間で、異なるコードインデックスの範囲にマップされていることがあります。
この参照型が ArrayType
の場合は、返されるリストは常に空になります。この参照型が InterfaceType
の場合は、そのクラスの初期化メソッド内に、インタフェースが実行可能なコードを持たない場合は、返されるリストが空になります。
Location
オブジェクトの ListAbsentInformationException
- このクラスに対する行番号情報がなく、かつこのクラスの実行可能メンバに非 native で非 abstract なものが存在する場合ClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public java.util.List locationsOfLine(int lineNumber) throws AbsentInformationException
Location
オブジェクトがすべて含まれる List を返します。
この参照型が ArrayType
の場合は、返されるリストは常に空になります。この参照型が InterfaceType
の場合は、そのクラスの初期化メソッド内の指定された行番号に、インタフェースが実行可能なコードを持たない場合は、返されるリストが空になります。
Location
オブジェクトの ListAbsentInformationException
- このクラスに対する行番号情報がない場合ClassNotPreparedException
- このクラスがまだ準備されていない場合ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合InvalidLineNumberException
- 指定された行に関連した実行可能なコードがない場合public boolean equals(java.lang.Object obj)
java.lang.Object
内の equals
ReferenceType
である場合、両方の ReferenceType が同じ VM に属している場合、およびその VM の java.lang.Class の同じインスタンスに対応するクラスが ReferenceType によってミラー化されている場合は trueObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合public int hashCode()
java.lang.Object
内の hashCode
ObjectCollectedException
- この参照型がアンロードされ、ガベージコレクトされている場合
|
Java Debug Interface | ||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |