Интерфейс StackWalker.StackFrame
- Вложенный класс:
- StackWalker
public static interface StackWalker.StackFrame
Объект StackFrame представляет вызов метода, возвращённый StackWalker.
Метод getDeclaringClass() может быть не поддерживаемым, в зависимости от опций обхода стека обхода стека.
- С момента:
- 9
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getByteCodeIndex() |
Возвращает индекс в массив кода атрибута |
String |
getClassName() |
Возвращает бинарное имя класса, объявляющего метод, представленный этим фреймом стека. |
Class<?> |
getDeclaringClass() |
Возвращает объявляющий |
default String |
getDescriptor() |
Возвращает дескриптор метода, представленного этим фреймом стека, как определено в Спецификации виртуальной машины Java. |
String |
getFileName() |
Возвращает имя файла исходного кода, содержащего точку выполнения, представленную этим фреймом стека. |
int |
getLineNumber() |
Возвращает номер строки исходного кода, содержащей точку выполнения, представленную этим фреймом стека. |
String |
getMethodName() |
Возвращает имя метода, представленного этим фреймом стека. |
default MethodType |
getMethodType() |
Возвращает |
boolean |
isNativeMethod() |
Возвращает |
StackTraceElement |
toStackTraceElement() |
Возвращает |
Методы
getClassName
String getClassName()
Возвращает бинарное имя класса, объявляющего метод, представленный этим фреймом стека.
- Возвращает:
- бинарное имя объявляющего класса метода, представленного этим фреймом стека
getMethodName
String getMethodName()
Возвращает имя метода, представленного этим фреймом стека.
- Возвращает:
- имя метода, представленного этим фреймом стека
getDeclaringClass
Class<?> getDeclaringClass()
Возвращает объявляющий Class для метода, представленного этим фреймом стека.
- Возвращает:
- объявляющий
Classметода, представленного этим фреймом стека - Исключение:
-
UnsupportedOperationException- если этотStackWalkerне настроен сOption.RETAIN_CLASS_REFERENCE.
getMethodType
default MethodType getMethodType()
Возвращает MethodType, представляющий типы параметров и возвращаемый тип для метода, представленного этим фреймом стека.
- Требования к реализации:
- Стандартная реализация выбрасывает
UnsupportedOperationException. - Возвращает:
MethodTypeдля этого фрейма стека- Исключение:
-
UnsupportedOperationException- если этотStackWalkerне настроен сOption.RETAIN_CLASS_REFERENCE. - С момента:
- 10
getDescriptor
default String getDescriptor()
Возвращает дескриптор метода, представленного этим фреймом стека, как определено в Спецификации виртуальной машины Java.
- Требования к реализации:
- Стандартная реализация выбрасывает
UnsupportedOperationException. - Возвращает:
- дескриптор метода, представленного этим фреймом стека
- С момента:
- 10
- См. также:
-
MethodType.fromMethodDescriptorString(String, ClassLoader),MethodType.toMethodDescriptorString()
getByteCodeIndex
int getByteCodeIndex()
Возвращает индекс в массиве кода атрибута Code , содержащего точку выполнения, представленную этим фреймом стека. Массив кода содержит фактические байты кода виртуальной машины Java, реализующие метод.
- Возвращает:
- индекс в массиве кода атрибута
Code, содержащего точку выполнения, представленную этим фреймом стека, или отрицательное число, если метод является нативным.
getFileName
String getFileName()
Возвращает имя файла исходного кода, содержащего точку выполнения, представленную этим фреймом стека. Обычно соответствует атрибуту SourceFile соответствующего файла class , как определено в Спецификации виртуальной машины Java. В некоторых системах имя может ссылаться на некоторый блок исходного кода, отличный от файла, например, запись в репозитории исходного кода.
- Возвращает:
- имя файла, содержащего точку выполнения, представленную этим фреймом стека, или
null, если эта информация недоступна.
getLineNumber
int getLineNumber()
Возвращает номер строки исходного кода, содержащей точку выполнения, представленную этим фреймом стека. Обычно выводится из атрибута LineNumberTable соответствующего файла class , как определено в Спецификации виртуальной машины Java.
- Возвращает:
- номер строки исходного кода, содержащей точку выполнения, представленную этим фреймом стека, или отрицательное число, если эта информация недоступна.
isNativeMethod
boolean isNativeMethod()
Возвращает true , если метод, содержащий точку выполнения, представленную этим фреймом стека, является нативным методом.
- Возвращает:
-
true, если метод, содержащий точку выполнения, представленную этим фреймом стека, является нативным методом.
toStackTraceElement
StackTraceElement toStackTraceElement()
Возвращает StackTraceElement для этого фрейма стека.
- Возвращает:
-
StackTraceElementдля этого фрейма стека.
© 1993, 2020, 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://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/StackWalker.StackFrame.html