Spec-Zone.ru › OpenJDK 27

Interface StackWalker.StackFrame

Enclosing class:
StackWalker
public static interface StackWalker.StackFrame
A StackFrame object represents a method invocation returned by StackWalker.

Stack walker options configure the stack frame information obtained by a StackWalker. If the stack walker is configured with DROP_METHOD_INFO option, method information such as the method name, the line number, the bytecode index, etc will be dropped. If the stack walker is configured with RETAIN_CLASS_REFERENCE option, the Class object will be retained for access.

See Java Virtual Machine Specification:
2.6 Frames
Since:
9

Method Summary

Modifier and Type Method Description
int getByteCodeIndex()
Returns the index to the code array of the Code attribute containing the execution point represented by this stack frame.
String getClassName()
Returns the binary name of the declaring class of the method represented by this stack frame.
Class<?> getDeclaringClass()
Returns the declaring Class for the method represented by this stack frame.
default String getDescriptor()
Returns the descriptor of the method represented by this stack frame as defined by The Java Virtual Machine Specification.
String getFileName()
Returns the name of the source file containing the execution point represented by this stack frame.
int getLineNumber()
Returns the line number of the source line containing the execution point represented by this stack frame.
String getMethodName()
Returns the name of the method represented by this stack frame.
default MethodType getMethodType()
Returns the MethodType representing the parameter types and the return type for the method represented by this stack frame.
boolean isNativeMethod()
Returns true if the method containing the execution point represented by this stack frame is a native method.
StackTraceElement toStackTraceElement()
Returns StackTraceElement for this stack frame.

Method Details

getClassName

String getClassName()
Returns 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()
Returns the name of the method represented by this stack frame.
Returns:
the name of the method represented by this stack frame
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option

getDeclaringClass

Class<?> getDeclaringClass()
Returns the declaring Class for the method represented by this stack frame.
Returns:
the declaring Class for the method represented by this stack frame
Throws:
UnsupportedOperationException - if the StackWalker is configured without RETAIN_CLASS_REFERENCE option

getMethodType

default MethodType getMethodType()
Returns the MethodType representing the parameter types and the return type for the method represented by this stack frame.
Implementation Requirements:
The default implementation throws UnsupportedOperationException.
Returns:
the MethodType of the method represented by this stack frame
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option or without RETAIN_CLASS_REFERENCE option
Since:
10

getDescriptor

default String 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
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option
See Java Virtual Machine Specification:
4.3.3 Method Descriptors
Since:
10
See Also:
  • MethodType.fromMethodDescriptorString(String, ClassLoader)
  • MethodType.toMethodDescriptorString()

getByteCodeIndex

int getByteCodeIndex()
Returns the index to the code array of the Code attribute 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 Code attribute containing the execution point represented by this stack frame, or a negative number if the method is native.
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option
See Java Virtual Machine Specification:
4.7.3 The Code Attribute

getFileName

String getFileName()
Returns the name of the source file containing the execution point represented by this stack frame. Generally, this corresponds to the SourceFile attribute of the relevant class file 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 null if this information is unavailable.
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option
See Java Virtual Machine Specification:
4.7.10 The SourceFile Attribute

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 the LineNumberTable attribute of the relevant class file 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.
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option
See Java Virtual Machine Specification:
4.7.12 The LineNumberTable Attribute

isNativeMethod

boolean isNativeMethod()
Returns true if the method containing the execution point represented by this stack frame is a native method.
Returns:
true if the method containing the execution point represented by this stack frame is a native method
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option

toStackTraceElement

StackTraceElement toStackTraceElement()
Returns StackTraceElement for this stack frame.
Returns:
StackTraceElement for this stack frame
Throws:
UnsupportedOperationException - if the StackWalker is configured with DROP_METHOD_INFO option

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API