- Enclosing class:
- StackWalker
public static interface StackWalker.StackFrame
A
StackFrame object represents a method invocation returned by
StackWalker.
The getDeclaringClass() method may be unsupported as determined
by the stack walking options of a stack walker.
- See Java Virtual Machine Specification:
-
2.6
- Since:
- 9
-
Method Summary
Modifier and TypeMethodDescriptionintReturns the index to the code array of theCodeattribute containing the execution point represented by this stack frame.Gets the binary name of the declaring class of the method represented by this stack frame.Class<?>Gets the declaringClassfor the method represented by this stack frame.default StringReturns the descriptor of the method represented by this stack frame as defined by The Java Virtual Machine Specification.Returns the name of the source file containing the execution point represented by this stack frame.intReturns the line number of the source line containing the execution point represented by this stack frame.Gets the name of the method represented by this stack frame.default MethodTypeReturns theMethodTyperepresenting the parameter types and the return type for the method represented by this stack frame.booleanReturnstrueif the method containing the execution point represented by this stack frame is a native method.Gets aStackTraceElementfor this stack frame.
-
Method Details
-
getClassName
String getClassName()Gets the binary name of the declaring class of the method represented by this stack frame.- Returns:
- the binary name of the declaring class of the method represented by this stack frame
- See Java Language Specification:
-
13.1 The Form of a Binary
-
getMethodName
String getMethodName()Gets the name of the method represented by this stack frame.- Returns:
- the name of the method represented by this stack frame
-
getDeclaringClass
Class<?> getDeclaringClass()Gets the declaringClassfor the method represented by this stack frame.- Returns:
- the declaring
Classof the method represented by this stack frame - Throws:
UnsupportedOperationException- if thisStackWalkeris not configured withOption.RETAIN_CLASS_REFERENCE.
-
getMethodType
Returns theMethodTyperepresenting the parameter types and the return type for the method represented by this stack frame.- Implementation Requirements:
- The default implementation throws
UnsupportedOperationException. - Returns:
- the
MethodTypefor this stack frame - Throws:
UnsupportedOperationException- if thisStackWalkeris not configured withOption.RETAIN_CLASS_REFERENCE.- Since:
- 10
-
getDescriptor
Returns the descriptor of the method represented by this stack frame as defined by The Java Virtual Machine Specification.- Implementation Requirements:
- The default implementation throws
UnsupportedOperationException. - Returns:
- the descriptor of the method represented by this stack frame
- See Java Virtual Machine Specification:
-
4.3.3 Method Descriptor
- Since:
- 10
- See Also:
-
getByteCodeIndex
int getByteCodeIndex()Returns the index to the code array of theCodeattribute containing the execution point represented by this stack frame. The code array gives the actual bytes of Java Virtual Machine code that implement the method.- Returns:
- the index to the code array of the
Codeattribute containing the execution point represented by this stack frame, or a negative number if the method is native. - See Java Virtual Machine Specification:
-
4.7.3 The
CodeAttribute
-
getFileName
String getFileName()Returns the name of the source file containing the execution point represented by this stack frame. Generally, this corresponds to theSourceFileattribute of the relevantclassfile as defined by The Java Virtual Machine Specification. In some systems, the name may refer to some source code unit other than a file, such as an entry in a source repository.- Returns:
- the name of the file containing the execution point
represented by this stack frame, or
nullif this information is unavailable. - See Java Virtual Machine Specification:
-
4.7.10 The
SourceFileAttribute
-
getLineNumber
int getLineNumber()Returns the line number of the source line containing the execution point represented by this stack frame. Generally, this is derived from theLineNumberTableattribute of the relevantclassfile as defined by The Java Virtual Machine Specification.- Returns:
- the line number of the source line containing the execution point represented by this stack frame, or a negative number if this information is unavailable.
- See Java Virtual Machine Specification:
-
4.7.12 The
LineNumberTableAttribute
-
isNativeMethod
boolean isNativeMethod()Returnstrueif the method containing the execution point represented by this stack frame is a native method.- Returns:
trueif the method containing the execution point represented by this stack frame is a native method.
-
toStackTraceElement
StackTraceElement toStackTraceElement()Gets aStackTraceElementfor this stack frame.- Returns:
StackTraceElementfor this stack frame.
-