Spec-Zone.ru › OpenJDK 24

Интерфейс StackWalker.StackFrame

Вложенный класс:
StackWalker
public static interface StackWalker.StackFrame
Объект StackFrame представляет вызов метода, возвращенный методом StackWalker.

Параметры обхода стека конфигурируют информацию о кадрах стека, полученную объектом StackWalker. Если обход стека сконфигурирован с параметром DROP_METHOD_INFO, информация о методе, такая как имя метода, номер строки, индекс байт-кода и т.п., будет опущена. Если обход стека сконфигурирован с параметром RETAIN_CLASS_REFERENCE, объект Class будет сохранен для доступа.

См. Спецификацию виртуальной машины Java:
2.6 Кадры
С:
9

Краткое описание методов

Модификатор и тип Метод Описание
int getByteCodeIndex()
Возвращает индекс в массиве кода атрибута Code, содержащего точку выполнения, представленную этим кадром стека.
String getClassName()
Возвращает двоичное имя класса-владельца метода, представленного этим кадром стека.
Class<?> getDeclaringClass()
Возвращает класс-владелец Class для метода, представленного этим кадром стека.
default String getDescriptor()
Возвращает дескриптор метода, представленного этим кадром стека, как определено в Спецификации виртуальной машины Java.
String getFileName()
Возвращает имя исходного файла, содержащего точку выполнения, представленную этим кадром стека.
int getLineNumber()
Возвращает номер строки исходного кода, содержащей точку выполнения, представленную этим кадром стека.
String getMethodName()
Возвращает имя метода, представленного этим кадром стека.
default MethodType getMethodType()
Возвращает MethodType, представляющий типы параметров и возвращаемый тип для метода, представленного этим кадром стека.
boolean isNativeMethod()
Возвращает true, если метод, содержащий точку выполнения, представленную этим кадром стека, является нативным методом.
StackTraceElement toStackTraceElement()
Возвращает 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.
Требования к реализации:
По умолчанию реализация выбрасывает UnsupportedOperationException.
Возвращает:
описатель метода, представленного этим стековым фреймом
Исключение:
UnsupportedOperationException — если StackWalker настроен с опцией DROP_METHOD_INFO
См. Спецификацию виртуальной машины Java:
4.3.3 Описатели методов
С версии:
10
См. также:
  • MethodType.fromMethodDescriptorString(String, ClassLoader)
  • MethodType.toMethodDescriptorString()

getByteCodeIndex

int getByteCodeIndex()
Возвращает индекс в массив кода атрибута Code, содержащего точку выполнения, представленную этим стековым фреймом. Массив кода содержит фактические байты кода виртуальной машины Java, реализующие метод.
Возвращает:
индекс в массив кода атрибута Code, содержащего точку выполнения, представленную этим стековым фреймом, или отрицательное число, если метод является нативным.
Исключение:
UnsupportedOperationException — если StackWalker настроен с опцией DROP_METHOD_INFO
См. Спецификацию виртуальной машины Java:
4.7.3 Атрибут Code

getFileName

String getFileName()
Возвращает имя файла исходного кода, содержащего точку выполнения, представленную этим стековым фреймом. Обычно это соответствует атрибуту SourceFile соответствующего файла class, как определено в Спецификации виртуальной машины Java. В некоторых системах имя может ссылаться на какой-либо фрагмент исходного кода, помимо файла, например, на запись в системе управления исходными кодами.
Возвращает:
имя файла, содержащего точку выполнения, представленную этим стековым фреймом, или null, если эта информация недоступна.
Исключение:
UnsupportedOperationException — если StackWalker настроен с опцией DROP_METHOD_INFO
См. Спецификацию виртуальной машины Java:
4.7.10 Атрибут SourceFile

getLineNumber

int getLineNumber()
Возвращает номер строки исходного кода, содержащей точку выполнения, представленную этим стековым фреймом. Обычно это определяется из атрибута LineNumberTable соответствующего файла class, как определено в Спецификации виртуальной машины Java.
Возвращает:
номер строки исходного кода, содержащей точку выполнения, представленную этим стековым фреймом, или отрицательное число, если эта информация недоступна.
Исключение:
UnsupportedOperationException — если StackWalker настроен с опцией DROP_METHOD_INFO
См. Спецификацию виртуальной машины Java:
4.7.12 Атрибут LineNumberTable

isNativeMethod

boolean isNativeMethod()
Возвращает true, если метод, содержащий точку выполнения, представленную этим стековым фреймом, является нативным методом.
Возвращает:
true, если метод, содержащий точку выполнения, представленную этим стековым фреймом, является нативным методом
Исключение:
UnsupportedOperationException — если StackWalker настроен с опцией DROP_METHOD_INFO

toStackTraceElement

StackTraceElement toStackTraceElement()
Возвращает StackTraceElement для этого стекового фрейма.
Возвращает:
StackTraceElement для этого стекового фрейма
Исключение:
UnsupportedOperationException — если StackWalker настроен с опцией DROP_METHOD_INFO

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/StackWalker.StackFrame.html

Spec-Zone.ru

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