-
- すべてのスーパー・インタフェース:
Accessible
,Comparable<ReferenceType>
,Mirror
,Type
- 既知のすべてのサブインタフェース:
ArrayType
,ClassType
,InterfaceType
public interface ReferenceType extends Type, Comparable<ReferenceType>, Accessible
ターゲットVM内の任意のオブジェクトの型を表します。 Java™言語仕様で規定されているように、ReferenceTypeはクラス型、インタフェース型、および配列型の3つをカバーします。 すべてのReferenceTypeオブジェクトは、クラスのClassType
、インタフェースのInterfaceType
、配列のArrayType
のいずれかのサブインタフェースに属します。 プリミティブ・クラス(Integer.TYPE
のreflected type
など)は、ClassTypeとして表されることに注意してください。 VMはこれら3つの型のどの場合もClassオブジェクトを生成するため、VMから見ると、各ReferenceTypeは個別のClassオブジェクトにマッピングされます。ReferenceTypeを取得するには、特定の
ObjectReference
にその型を照会するか、VirtualMachine
からすべての参照型のリストを取得します。ReferenceTypeを使用して、メソッドやフィールドなどの静的な型の情報、または対応するClassオブジェクトやクラス・ローダーなどの動的な型の情報にアクセスすることができます。
ターゲットVMが切断された場合、
ReferenceType
を直接的または間接的にパラメータとして取るReferenceType
上の任意のメソッドは、VMDisconnectedException
をスローし、VMDisconnectEvent
がEventQueue
から読出せるようになります。ReferenceType
を直接的または間接的にパラメータとして取るReferenceType
上の任意のメソッドは、ターゲットVMのメモリーが不足するとVMOutOfMemoryException
をスローします。ReferenceType
を直接的または間接的にパラメータに取るReferenceType
上の任意のメソッドは、ミラーされた型がアンロードされた場合にObjectCollectedException
をスローします。- 導入されたバージョン:
- 1.3
- 関連項目:
ObjectReference
,ObjectReference.referenceType()
,VirtualMachine
,VirtualMachine.allClasses()
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド デフォルト・メソッド 修飾子と型 メソッド 説明 List<Field>
allFields()
この型、そのスーパー・クラス、実装インタフェース、およびスーパー・インタフェース、またはそのいずれかで宣言された各Field
を含むリストを返します。List<Location>
allLineLocations()
この参照型内の各実行可能ソース行のLocation
オブジェクトを含むリストを返します。List<Location>
allLineLocations(String stratum, String sourceName)
この参照型内の各実行可能ソース行のLocation
オブジェクトを含むリストを返します。List<Method>
allMethods()
この型、そのスーパー・クラス、実装インタフェース、およびスーパー・インタフェース、またはそのいずれかで宣言された各Method
を含むリストを返します。List<String>
availableStrata()
この参照型で利用可能な層を返します。ClassLoaderReference
classLoader()
この型に対応するクラスをロードしたクラス・ローダーのオブジェクトを取得します。ClassObjectReference
classObject()
ターゲットVM内でこの型に対応するクラス・オブジェクトを返します。byte[]
constantPool()
「Java仮想マシン仕様」のクラス・ファイル形式の説明に記載されているconstant_pool項目の形式で、定数プールのrawバイト数を返します。int
constantPoolCount()
定数プール内のエントリ数に1を加えた値を返します。String
defaultStratum()
この参照型のデフォルト層を返します。boolean
equals(Object obj)
指定されたObjectとこのReferenceTypeが等しいかどうかを比較します。boolean
failedToInitialize()
このクラスの初期化が失敗したかどうかを判定します。Field
fieldByName(String fieldName)
指定されたあいまいでない名前で、可視Field
を検索します。List<Field>
fields()
この型で宣言された各Field
を含むリストを返します。String
genericSignature()
存在する場合は、この型のジェネリック・シグニチャを取得します。Value
getValue(Field field)
Map<Field,Value>
getValues(List<? extends Field> fields)
int
hashCode()
このObjectReferenceのハッシュ・コード値を返します。List<ObjectReference>
instances(long maxInstances)
このReferenceTypeのインスタンスを返します。boolean
isAbstract()
この型がabstractとして宣言されたかどうかを判定します。boolean
isFinal()
この型がfinalとして宣言されたかどうかを判定します。boolean
isInitialized()
この型が初期化されているかどうかを判定します。boolean
isPrepared()
この型が準備されているかどうかを判定します。boolean
isStatic()
この型がstaticとして宣言されたかどうかを判定します。boolean
isVerified()
この型が検証されているかどうかを判定します。List<Location>
locationsOfLine(int lineNumber)
指定された行番号にマッピングされたすべてのLocation
オブジェクトを含むリストを返します。List<Location>
locationsOfLine(String stratum, String sourceName, int lineNumber)
指定された行番号にマッピングされたすべてのLocation
オブジェクトを含むリストを返します。int
majorVersion()
「Java仮想マシン仕様」のクラス・ファイル形式の説明に定義されているように、クラスのメジャー・バージョン番号を返します。List<Method>
methods()
この型で直接宣言された各Method
を含むリストを返します。List<Method>
methodsByName(String name)
指定された名前を持つ各可視Method
を含むリストを返します。List<Method>
methodsByName(String name, String signature)
指定された名前とシグニチャを持つ各可視Method
を含むリストを返します。int
minorVersion()
「Java仮想マシン仕様」のクラス・ファイル形式の説明に定義されているように、クラスのマイナー・バージョン番号を返します。default ModuleReference
module()
この型に対応するクラスを含むモジュール・オブジェクトを取得します。String
name()
この型の完全指定名を取得します。List<ReferenceType>
nestedTypes()
この型内に宣言され、現在仮想マシンにロードされているReferenceType
オブジェクトを含むリストを返します。String
sourceDebugExtension()
この型のソース・デバッグ拡張機能を取得します。String
sourceName()
この型の宣言に対応するソースの識別名を取得します。List<String>
sourceNames(String stratum)
この型の宣言に対応するすべてのソースの識別名を取得します。List<String>
sourcePaths(String stratum)
この型の宣言に対応するすべてのソースのパスを取得します。List<Field>
visibleFields()
この型内の非表示でなくあいまいでない各Field
を含むリストを返します。List<Method>
visibleMethods()
この型によって宣言された、またはこの型に継承された各Method
を含むリストを返します。-
インタフェース com.sun.jdi.Accessibleから継承されたメソッド
isPackagePrivate, isPrivate, isProtected, isPublic, modifiers
-
インタフェース java.lang.Comparableから継承されたメソッド
compareTo
-
インタフェース com.sun.jdi.Mirrorから継承されたメソッド
toString, virtualMachine
-
-
-
-
メソッドの詳細
-
name
String name()
この型の完全指定名を取得します。 この名前は、この型のオブジェクトがJavaプログラミング言語で宣言される場合と同様の書式で返されます。プリミティブ・クラスの場合、返される名前は対応するプリミティブ型の名前です。たとえば、
Integer.TYPE
によって表されるクラスの名前はintとして返されます。
-
genericSignature
String genericSignature()
存在する場合は、この型のジェネリック・シグニチャを取得します。 ジェネリック・シグニチャについては、「Java™仮想マシン仕様」を参照してください。- 戻り値:
- ジェネリック・シグニチャを含む文字列、またはジェネリック・シグニチャが存在しない場合は
null
。 - 導入されたバージョン:
- 1.5
-
classLoader
ClassLoaderReference classLoader()
この型に対応するクラスをロードしたクラス・ローダーのオブジェクトを取得します。- 戻り値:
- クラス・ローダーをミラー化する
ClassLoaderReference
。クラスがブートストラップ・クラス・ローダーによってロードされた場合はnull
。
-
module
default ModuleReference module()
この型に対応するクラスを含むモジュール・オブジェクトを取得します。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。VirtualMachine.canGetModuleInfo()
を使用して、操作がサポートされているかどうかを判断します。- 実装要件:
- デフォルト実装は
UnsupportedOperationException
をスローします。 - 戻り値:
- ターゲットVM内のモジュールをミラー・リングする
ModuleReference
。 - 例外:
UnsupportedOperationException
- ターゲット仮想マシンがこの操作をサポートしていない場合。- 導入されたバージョン:
- 9
-
sourceName
String sourceName() throws AbsentInformationException
この型の宣言に対応するソースの識別名を取得します。 この文字列は、ソース・リポジトリ・メカニズムで解釈されます。戻り値のソース名は、VMのデフォルト層(
VirtualMachine.getDefaultStratum()
)に応じて変わります。 リファレンス実装では、基底層を使用する場合、この型の宣言が含まれているソース・ファイルの非修飾名が文字列として返されます。 その他の層の場合、その層の1番目のソース名が返されます。 その他の言語では、1つの参照型に対して複数のソース・ファイルが存在する可能性があるため、Location.sourceName()
またはsourceNames(String)
を使用することをお勧めします。配列(
ArrayType
)およびプリミティブ・クラスの場合、常にAbsentInformationExceptionがスローされます。- 戻り値:
- 文字列型のソース・ファイル名
- 例外:
AbsentInformationException
- ソース名が不明の場合
-
sourceNames
List<String> sourceNames(String stratum) throws AbsentInformationException
この型の宣言に対応するすべてのソースの識別名を取得します。 この名前は、ソース・リポジトリ・メカニズムで解釈されます。返される名前は、指定された層の名前です。層の詳細は、
Location
を参照してください。 リファレンス実装では、Javaプログラミング言語層を使用する場合、返されるListに含まれる要素は、String要素(この型の宣言が含まれているソース・ファイルの非修飾名)だけになります。 その他の層を使用する場合、その層で定義されているすべてのソース名が返されます。- パラメータ:
stratum
- 情報取得元の層。宣言する型のデフォルト層を使用する場合はnull
。- 戻り値:
- ソース名を表すStringオブジェクトのList
- 例外:
AbsentInformationException
- ソース名が不明の場合。配列(
ArrayType
)およびプリミティブ・クラスの場合、常にAbsentInformationExceptionがスローされます。- 導入されたバージョン:
- 1.4
-
sourcePaths
List<String> sourcePaths(String stratum) throws AbsentInformationException
この型の宣言に対応するすべてのソースのパスを取得します。 このパスは、ソース・リポジトリ・メカニズムで解釈されます。返されるパスは、指定された層のパスです。層の詳細は、
Location
を参照してください。 リファレンス実装では、Javaプログラミング言語層のようにソース・パスを明示的に指定しない層の場合、ReferenceTypeのパッケージ名をプラットフォーム固有のパス名に変換した結果にsourceNames(String)
を付加した文字列が返されます。 たとえば、Windowsプラットフォームの場合、java.lang.Thread
は1つの要素"java\lang\Thread.java"
を含むListを返します。- パラメータ:
stratum
- 情報取得元の層。宣言する型のデフォルト層を使用する場合はnull
。- 戻り値:
- ソース・パスを表すStringオブジェクトのList
- 例外:
AbsentInformationException
- ソース名が不明の場合。配列(
ArrayType
)およびプリミティブ・クラスの場合、常にAbsentInformationExceptionがスローされます。- 導入されたバージョン:
- 1.4
-
sourceDebugExtension
String sourceDebugExtension() throws AbsentInformationException
この型のソース・デバッグ拡張機能を取得します。この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、
canGetSourceDebugExtension()
を使用します。- 戻り値:
- ソース・デバッグ拡張機能の属性の文字列
- 例外:
AbsentInformationException
- 拡張が指定されていない場合UnsupportedOperationException
- ターゲット仮想マシンでこの操作がサポートされていない場合。canGetSourceDebugExtension()
を参照
-
isStatic
boolean isStatic()
この型がstaticとして宣言されたかどうかを判定します。 型を入れ子にしないとstaticとして宣言できないため、パッケージ・レベルの型、配列型、またはプリミティブ・クラスの場合はfalse
が返されます。- 戻り値:
- この型がstaticの場合は
true
、それ以外の場合はfalse。
-
isAbstract
boolean isAbstract()
この型がabstractとして宣言されたかどうかを判定します。配列(
ArrayType
)およびプリミティブ・クラスの場合、戻り値は未定義です。- 戻り値:
- この型がabstractの場合は
true
、それ以外の場合はfalse。
-
isFinal
boolean isFinal()
この型がfinalとして宣言されたかどうかを判定します。配列(
ArrayType
)およびプリミティブ・クラスの場合、戻り値は常にtrueです。- 戻り値:
- この型がfinalの場合は
true
、それ以外の場合はfalse。
-
isPrepared
boolean isPrepared()
- 戻り値:
- この型が準備されている場合は
true
、それ以外の場合はfalse。
-
isVerified
boolean isVerified()
- 戻り値:
- この型が検証されている場合は
true
、それ以外の場合はfalse。
-
isInitialized
boolean isInitialized()
この型が初期化されているかどうかを判定します。 クラスの検証の定義については、JVM仕様を参照してください。InterfaceType
の場合、このメソッドは常にisPrepared()
と同じ値を返します。配列(
ArrayType
)およびプリミティブ・クラスの場合、戻り値は未定義です。- 戻り値:
- この型が初期化されている場合は
true
、それ以外の場合はfalse。
-
failedToInitialize
boolean failedToInitialize()
- 戻り値:
- 初期化を試行したが失敗した場合は
true
、それ以外の場合はfalse。
-
fields
List<Field> fields()
この型で宣言された各Field
を含むリストを返します。 継承したフィールドは含まれません。 コンパイラによって作成された合成フィールドがある場合は、そのフィールドもこのリストに含まれます。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
Field
オブジェクトのList。フィールドが存在しない場合は、リストの長さはゼロになる。- 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
visibleFields
List<Field> visibleFields()
この型内の非表示でなくあいまいでない各Field
を含むリストを返します。 このクラスまたはそのインスタンスから、単純名でアクセスできる各フィールドが含まれます。 あいまいに多重継承されたフィールド、つまり後で継承されたクラスの同じ名前のフィールドによって隠されたフィールドには、単純名でアクセスすることはできません。このようなフィールドは、返されるリストにも含まれません。 その他の継承されたフィールドは、すべてこのリストに含まれます。 詳細は、JLSのセクション8.3を参照してください。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
Field
オブジェクトのList。可視フィールドが存在しない場合は、リストの長さはゼロになる。- 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
allFields
List<Field> allFields()
この型、そのスーパー・クラス、実装インタフェース、およびスーパー・インタフェース、またはそのいずれかで宣言された各Field
を含むリストを返します。 隠しフィールドおよび多重継承されたフィールドを含め、宣言されたフィールドおよび継承されたフィールドをすべて返します。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
Field
オブジェクトのList。フィールドが存在しない場合は、リストの長さはゼロになる。- 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
fieldByName
Field fieldByName(String fieldName)
指定されたあいまいでない名前で、可視Field
を検索します。 このメソッドは、JLS (8.3.3)に指定された継承規則に従って可視性を判断します。配列(
ArrayType
)およびプリミティブ・クラスの場合、戻り値は常にnullです。- パラメータ:
fieldName
- 目的のフィールドの名前を含む文字列。- 戻り値:
- 見つかったフィールドをミラー化する
Field
オブジェクト。指定の名前のフィールドがない場合、または指定の名前があいまいな場合はnull。 - 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
methods
List<Method> methods()
この型で直接宣言された各Method
を含むリストを返します。 継承されたメソッドは、含まれません。 このリストには、コンストラクタ、初期化メソッド(ある場合)、およびコンパイラによって作成された合成メソッドが含まれます。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
Method
オブジェクトのリスト。メソッドが存在しない場合は、リストの長さはゼロになる。- 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
visibleMethods
List<Method> visibleMethods()
この型によって宣言された、またはこの型に継承された各Method
を含むリストを返します。 隠されたまたはオーバーライドされた、スーパー・クラスまたはスーパー・インタフェースからのメソッドは含まれません。ただし返されるリストには、同じシグニチャを持つ多重継承メソッドが含まれることがありますが、
ClassType
のメンバーが複数含まれることはありません。 詳細は、JLSのセクション8.4.6を参照してください。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
Method
オブジェクトのList。可視メソッドが存在しない場合は、リストの長さはゼロになる。- 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
allMethods
List<Method> allMethods()
この型、そのスーパー・クラス、実装インタフェース、およびスーパー・インタフェース、またはそのいずれかで宣言された各Method
を含むリストを返します。 隠しメソッドおよびオーバーライドされたメソッドを含め、宣言されたメソッドおよび継承されたメソッドをすべて返します。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
Method
オブジェクトのリスト。メソッドが存在しない場合は、リストの長さはゼロになる。- 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
methodsByName
List<Method> methodsByName(String name)
指定された名前を持つ各可視Method
を含むリストを返します。 オーバーロードされたメソッドを検索するときによく使用します。オーバーライドされたメソッドおよび隠されたメソッドは、含まれません。 詳細は、JLSの8.4.6を参照してください。
配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- パラメータ:
name
- 検索対象のメソッドの名前。- 戻り値:
- 指定の名前に一致する
Method
オブジェクトのList。一致するメソッドが見つからない場合は、リストの長さはゼロになる。 - 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
methodsByName
List<Method> methodsByName(String name, String signature)
指定された名前とシグニチャを持つ各可視Method
を含むリストを返します。 シグニチャ文字列は、ターゲット・メソッドのJNIシグニチャです。()V
([Ljava/lang/String;)V
(IIII)Z
このリストには、
ClassType
の構成要素である具象メソッドが複数含まれることはありません。このリスト内のその他のメソッドは、抽象メソッドです。 一致する具象メソッドだけを取得するには、ClassType.concreteMethodByName(java.lang.String, java.lang.String)
を使用します。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- パラメータ:
name
- 検索対象のメソッドの名前。signature
- 検索対象のメソッドのシグニチャ- 戻り値:
- 指定の名前およびシグニチャに一致する
Method
オブジェクトのList。一致するメソッドが見つからない場合は、リストの長さはゼロになる。 - 例外:
ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
nestedTypes
List<ReferenceType> nestedTypes()
この型内に宣言され、現在仮想マシンにロードされているReferenceType
オブジェクトを含むリストを返します。 静的な入れ子になった型と、静的でない入れ子になった型(つまり、内部型)の両方が含まれます。 この参照型内のコード・ブロックに宣言されたローカル内部型も、返されるリストに含まれます。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。- 戻り値:
- 入れ子になった
ReferenceType
オブジェクトのList。入れ子になった型がない場合は、リストの長さはゼロになる。
-
getValue
Value getValue(Field field)
この型の指定のstaticField
のValue
を取得します。 Fieldは、この型に対して有効である必要があります。つまり、Fieldは、この型、スーパー・クラス、スーパー・インタフェース、または実装インタフェースで宣言されている必要があります。- パラメータ:
field
- 要求された値を含むフィールド- 戻り値:
- インスタンス・フィールドの
Value
。 - 例外:
IllegalArgumentException
- フィールドがこのオブジェクトのクラスにとって有効でない場合。
-
getValues
Map<Field,Value> getValues(List<? extends Field> fields)
指定のリストにある各staticField
のValue
を含むマップを返します。 Fieldは、この型に対して有効である必要があります。つまり、Fieldは、この型、スーパー・クラス、スーパー・インタフェース、または実装インタフェースで宣言されている必要があります。- パラメータ:
fields
- 要求された値を含むField
オブジェクトのリスト。- 戻り値:
Value
を含む、要求されたField
オブジェクトのマップ。- 例外:
IllegalArgumentException
- このオブジェクトのクラスにとって無効なフィールドがある場合。VMMismatchException
-Mirror
引数とこのミラーが同じVirtualMachine
に属さない場合。
-
classObject
ClassObjectReference classObject()
ターゲットVM内でこの型に対応するクラス・オブジェクトを返します。 VMは、すべての種類のReferenceType (クラス、インタフェース、および配列型)のクラス・オブジェクトを生成します。- 戻り値:
- ターゲットVM内のこの参照型の
ClassObjectReference
。
-
allLineLocations
List<Location> allLineLocations() throws AbsentInformationException
この参照型内の各実行可能ソース行のLocation
オブジェクトを含むリストを返します。このメソッドは、
allLineLocations(vm.getDefaultStratum(),null)
と同等です(詳細はallLineLocations(String,String)
を参照)。- 例外:
AbsentInformationException
- このクラスに対する行番号情報がなく、かつこのクラスの実行可能メンバーとして非nativeで非abstractなものが含まれる場合。ClassNotPreparedException
- このクラスがまだ準備されていない場合。
-
allLineLocations
List<Location> allLineLocations(String stratum, String sourceName) throws AbsentInformationException
この参照型内の各実行可能ソース行のLocation
オブジェクトを含むリストを返します。 各位置では、特定のソース行がコード・インデックスの特定の範囲にマップされています。 この範囲の開始点は、Location.codeIndex()
によって調べることができます。 返されるリストには、特定の行番号に対して複数の位置が含まれる可能性がありますが、これは、コンパイラやVMが特定の行を、連続していない複数のコード・インデックス範囲へマッピングする場合があるからです。 同じソース行が、複数のメソッド間で、異なるコード・インデックスの範囲にマップされていることがあります。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。 インタフェース(InterfaceType
)の場合、返されるリストが空にならないのは、そのインタフェースのクラス初期化に実行可能コードが含まれている場合だけです。返されるリストは、指定された層のリストです。層の詳細は、
Location
を参照してください。- パラメータ:
stratum
- 情報取得元の層。defaultStratum()
を使う場合はnull
。sourceName
- 特定のソース・ファイル内の位置だけを取得する場合はそのファイル名、そうでない場合はnull
。- 戻り値:
- すべてのソース行の
Location
オブジェクトのリスト。 - 例外:
AbsentInformationException
- このクラスに対する行番号情報がなく、かつこのクラスの実行可能メンバーとして非nativeで非abstractなものが含まれる場合。 またはsourceNameがnull
でないのにソース名情報が存在しない場合。ClassNotPreparedException
- このクラスがまだ準備されていない場合。- 導入されたバージョン:
- 1.4
-
locationsOfLine
List<Location> locationsOfLine(int lineNumber) throws AbsentInformationException
指定された行番号にマッピングされたすべてのLocation
オブジェクトを含むリストを返します。このメソッドは、
locationsOfLine(vm.getDefaultStratum(), null, lineNumber)
と同等です(詳細はlocationsOfLine(java.lang.String,java.lang.String,int)
を参照)。- パラメータ:
lineNumber
- 行番号- 戻り値:
- 指定された行にマッピングされたすべての
Location
オブジェクトのリスト。 - 例外:
AbsentInformationException
- このクラスに対する行番号情報がない場合。ClassNotPreparedException
- このクラスがまだ準備されていない場合。- 関連項目:
VirtualMachine.getDefaultStratum()
-
locationsOfLine
List<Location> locationsOfLine(String stratum, String sourceName, int lineNumber) throws AbsentInformationException
指定された行番号にマッピングされたすべてのLocation
オブジェクトを含むリストを返します。配列(
ArrayType
)およびプリミティブ・クラスの場合、常に空のリストが返されます。 インタフェース(InterfaceType
)の場合、返されるリストが空にならないのは、そのインタフェースのクラス初期化時、指定の行番号に実行可能コードが含まれている場合だけです。 指定された行番号の位置に実行可能コードが存在しない場合は、空のリストが返されます。返されるリストは、指定された層のリストです。層の詳細は、
Location
を参照してください。- パラメータ:
stratum
- 行番号とソース名の比較に使う層。defaultStratum()
を使う場合はnull
。sourceName
- 行番号を含むソース名。すべてのソース名に一致させる場合はnull
lineNumber
- 行番号- 戻り値:
- 指定された行にマッピングされたすべての
Location
オブジェクトのリスト。 - 例外:
AbsentInformationException
- このクラスに対する行番号情報がない場合。 またはsourceNameがnull
でないのにソース名情報が存在しない場合。ClassNotPreparedException
- このクラスがまだ準備されていない場合。- 導入されたバージョン:
- 1.4
-
availableStrata
List<String> availableStrata()
この参照型で利用可能な層を返します。層については、
Location
を参照してください。- 戻り値:
- 層を表す
java.lang.String
のList - 導入されたバージョン:
- 1.4
-
defaultStratum
String defaultStratum()
この参照型のデフォルト層を返します。 これはクラス・ファイル内で指定され、ユーザーが変更することはできません。 クラス・ファイルにデフォルト層が指定されていない場合は、基底層("Java"
)が返されます。層については、
Location
を参照してください。- 導入されたバージョン:
- 1.4
-
instances
List<ObjectReference> instances(long maxInstances)
このReferenceTypeのインスタンスを返します。 ガベージ・コレクト目的で到達可能なインスタンスだけが返されます。この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、
VirtualMachine.canGetInstanceInfo()
を使用します。- パラメータ:
maxInstances
- 返されるインスタンスの最大数。 負でない数値。 ゼロの場合、すべてのインスタンスが返される。- 戻り値:
ObjectReference
オブジェクトのリスト。 このReferenceTypeのインスタンスが存在しない場合は、長さゼロのリストを返す。- 例外:
UnsupportedOperationException
- ターゲット仮想マシンがこの操作をサポートしていない場合(次を参照)。canGetInstanceInfo()
IllegalArgumentException
- maxInstancesがゼロ未満の場合。- 導入されたバージョン:
- 1.6
- 関連項目:
VirtualMachine.instanceCounts(List)
,ObjectReference.referringObjects(long)
-
equals
boolean equals(Object obj)
指定されたObjectとこのReferenceTypeが等しいかどうかを比較します。- オーバーライド:
equals
、クラス:Object
- パラメータ:
obj
- 比較対象の参照オブジェクト。- 戻り値:
- Objectが
ReferenceType
である場合、両方のReferenceTypeが同じVMに属している場合、およびそのVMのjava.lang.Classの同じインスタンスに対応するクラスがReferenceTypeによってミラー化されている場合はtrue。 - 関連項目:
Object.hashCode()
、HashMap
-
hashCode
int hashCode()
このObjectReferenceのハッシュ・コード値を返します。- オーバーライド:
hashCode
、クラス:Object
- 戻り値:
- 整数のハッシュ・コード
- 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
majorVersion
int majorVersion()
「Java仮想マシン仕様」のクラス・ファイル形式の説明に定義されているように、クラスのメジャー・バージョン番号を返します。 配列(ArrayType
)およびプリミティブ・クラスの場合、返されるメジャー・バージョン番号はゼロです。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canGetClassFileVersion()
を使用します。- 戻り値:
- クラスのメジャー・バージョン番号。
- 例外:
UnsupportedOperationException
- ターゲット仮想マシンがこの操作をサポートしていない場合(次を参照)。canGetClassFileVersion()
- 導入されたバージョン:
- 1.6
-
minorVersion
int minorVersion()
「Java仮想マシン仕様」のクラス・ファイル形式の説明に定義されているように、クラスのマイナー・バージョン番号を返します。 配列(ArrayType
)およびプリミティブ・クラスの場合、返されるマイナー・バージョン番号はゼロです。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canGetClassFileVersion()
を使用します。- 戻り値:
- クラスのマイナー・バージョン番号。
- 例外:
UnsupportedOperationException
- ターゲット仮想マシンがこの操作をサポートしていない場合(次を参照)。canGetClassFileVersion()
- 導入されたバージョン:
- 1.6
-
constantPoolCount
int constantPoolCount()
定数プール内のエントリ数に1を加えた値を返します。 これは、「Java仮想マシン仕様」のクラス・ファイル形式の説明に記載されている、constant_pool_count項目と一致します。 配列(ArrayType
)およびプリミティブ・クラスの場合、返される定数プール数の値はゼロです。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canGetConstantPool()
を使用します。- 戻り値:
- クラスの定数プール・エントリ数に1を加えた合計の値。
- 例外:
UnsupportedOperationException
- ターゲット仮想マシンがこの操作をサポートしていない場合(次を参照)。canGetConstantPool()
- 導入されたバージョン:
- 1.6
- 関連項目:
constantPool()
-
constantPool
byte[] constantPool()
「Java仮想マシン仕様」のクラス・ファイル形式の説明に記載されているconstant_pool項目の形式で、定数プールのrawバイト数を返します。 定数プールの形式は、クラス・ファイル形式のバージョンによって異なる可能性があるので、クラスのメジャー・バージョン番号、マイナー・バージョン番号に互換性があることを確認するようにしてください。 配列(ArrayType
)およびプリミティブ・クラスの場合、長さがゼロのバイト配列が返されます。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canGetConstantPool()
を使用します。- 戻り値:
- 定数プールのrawバイト数。
- 例外:
UnsupportedOperationException
- ターゲット仮想マシンがこの操作をサポートしていない場合(次を参照)。canGetConstantPool()
- 導入されたバージョン:
- 1.6
- 関連項目:
constantPoolCount()
-
-