- 含まれているクラス:
StackWalker
public static interface StackWalker.StackFrame
StackFrame
オブジェクトは、StackWalker
によって返されるメソッド呼び出しを表します。
「スタック・ウォーカ・オプション」は、StackWalker
によって取得されるスタック・フレーム情報を構成します。 スタック・ウォーカがDROP_METHOD_INFO
オプションで構成されている場合、「メソッド名」、「行番号」、「バイトコード・インデックス」などのメソッド情報が削除されます。 スタック・ウォーカがRETAIN_CLASS_REFERENCE
オプションで構成されている場合、Class
オブジェクトはアクセス用に保持されます。
- Java Virtual Machine仕様を参照してください:
-
2.6 フレーム
- 導入されたバージョン:
- 9
-
メソッドのサマリー
修飾子と型メソッド説明int
このスタック・フレームで表される実行ポイントを含むCode
属性のコード配列に索引を戻します。このスタック・フレームで表されるメソッドの宣言クラスの「バイナリ名」を返します。Class
<?> このスタック・フレームで表されるメソッドの宣言Class
を返します。default String
「Java Virtual Machine仕様」で定義されている、このスタック・フレームで表されるメソッドのdescriptorを返します。このスタック・フレームで表される実行ポイントを含むソース・ファイルの名前を返します。int
このスタック・フレームで表される実行ポイントを含むソース行の行番号を返します。このスタック・フレームで表されるメソッドの名前を返します。default MethodType
このスタック・フレームによって表されるメソッドのパラメータ型と戻り値の型を表すMethodType
を返します。boolean
このスタック・フレームによって表される実行ポイントを含むメソッドがネイティブ・メソッドである場合は、true
を返します。このスタック・フレームのStackTraceElement
を返します。
-
メソッドの詳細
-
getClassName
String getClassName()このスタック・フレームで表されるメソッドの宣言クラスの「バイナリ名」を返します。- 戻り値:
- このスタック・フレームで表されるメソッドの宣言クラスの「バイナリ名」
- Java言語仕様を参照してください:
-
13.1 バイナリの形式
-
getMethodName
String getMethodName()このスタック・フレームで表されるメソッドの名前を返します。- 戻り値:
- このスタック・フレームによって表されるメソッドの名前
- 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合
-
getDeclaringClass
Class<?> getDeclaringClass()このスタック・フレームで表されるメソッドの宣言Class
を返します。- 戻り値:
- このスタック・フレームで表されるメソッドの
Class
の宣言 - 例外:
UnsupportedOperationException
-StackWalker
がRETAIN_CLASS_REFERENCE
オプションなしで構成されている場合
-
getMethodType
default MethodType getMethodType()このスタック・フレームによって表されるメソッドのパラメータ型と戻り値の型を表すMethodType
を返します。- 実装要件:
- デフォルト実装は
UnsupportedOperationException
をスローします。 - 戻り値:
- このスタック・フレームで表されるメソッドの
MethodType
- 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合、またはRETAIN_CLASS_REFERENCE
オプションを使用しない場合- 導入されたバージョン:
- 10
-
getDescriptor
default String getDescriptor()「Java Virtual Machine仕様」で定義されている、このスタック・フレームで表されるメソッドのdescriptorを返します。- 実装要件:
- デフォルト実装は
UnsupportedOperationException
をスローします。 - 戻り値:
- このスタック・フレームによって表されるメソッドの記述子
- 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合- Java Virtual Machine仕様を参照してください:
-
4.3.3 メソッド・ディスクリプタ
- 導入されたバージョン:
- 10
- 関連項目:
-
getByteCodeIndex
int getByteCodeIndex()このスタック・フレームで表される実行ポイントを含むCode
属性のコード配列に索引を戻します。 コード配列は、メソッドを実装するJava Virtual Machineコードの実際のバイトを示します。- 戻り値:
- このスタック・フレームで表される実行ポイントを含む
Code
属性のコード配列への索引、またはメソッドがネイティブの場合は負の数。 - 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合- Java Virtual Machine仕様を参照してください:
-
4.7.3
Code
属性
-
getFileName
String getFileName()このスタック・フレームで表される実行ポイントを含むソース・ファイルの名前を返します。 通常、これは、「Java Virtual Machine仕様」で定義されている、関連するclass
ファイルのSourceFile
属性に対応します。 システムによっては、ソース・リポジトリ内のエントリなど、ファイル以外のソース・コード・ユニットを指す場合もあります。- 戻り値:
- このスタック・フレームで表される実行ポイントを含むファイルの名前。この情報が使用できない場合は
null
。 - 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合- Java Virtual Machine仕様を参照してください:
-
4.7.10
SourceFile
属性
-
getLineNumber
int getLineNumber()このスタック・フレームで表される実行ポイントを含むソース行の行番号を返します。 通常、これは、「Java Virtual Machine仕様」で定義されている、関連するclass
ファイルのLineNumberTable
属性から導出されます。- 戻り値:
- このスタック・フレームで表される実行ポイントを含むソース行の行番号、またはこの情報が使用できない場合は負の数。
- 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合- Java Virtual Machine仕様を参照してください:
-
4.7.12
LineNumberTable
属性
-
isNativeMethod
boolean isNativeMethod()このスタック・フレームによって表される実行ポイントを含むメソッドがネイティブ・メソッドである場合は、true
を返します。- 戻り値:
- このスタック・フレームによって表される実行ポイントを含むメソッドがネイティブ・メソッドである場合、
true
- 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合
-
toStackTraceElement
StackTraceElement toStackTraceElement()このスタック・フレームのStackTraceElement
を返します。- 戻り値:
- このスタック・フレームの
StackTraceElement
- 例外:
UnsupportedOperationException
-StackWalker
がDROP_METHOD_INFO
オプションで構成されている場合
-