Класс RecordedObject
- Прямые известные подклассы:
RecordedClass, RecordedClassLoader, RecordedEvent, RecordedFrame, RecordedMethod, RecordedStackTrace, RecordedThread, RecordedThreadGroup
public sealed class RecordedObject extends Object permits RecordedEvent, RecordedClassLoader, RecordedClass, RecordedMethod, RecordedStackTrace, RecordedFrame, RecordedThread, RecordedThreadGroup
Этот класс предоставляет методы для выбора и запроса вложенных объектов с помощью передачи объекта, разделенного точкой "." String (например, "aaa.bbb"). Метод вычисляет вложенный объект слева направо, и если часть null, он выбрасывает NullPointerException.
- Начиная с версии:
- 9
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final boolean |
getBoolean |
Возвращает значение поля типа boolean. |
final byte |
getByte |
Возвращает значение поля типа byte. |
final char |
getChar |
Возвращает значение поля типа char. |
final RecordedClass |
getClass |
Возвращает значение поля типа Class. |
final double |
getDouble |
Возвращает значение поля типа double или другого примитивного типа, который можно преобразовать к типу double расширяющим преобразованием. |
final Duration |
getDuration |
Возвращает значение поля интервала времени. |
List |
getFields() |
Возвращает неизменяемый список полей этого объекта. |
final float |
getFloat |
Возвращает значение поля типа float или другого примитивного типа, который можно преобразовать к типу float расширяющим преобразованием. |
final Instant |
getInstant |
Возвращает значение поля временной метки. |
final int |
getInt |
Возвращает значение поля типа int или другого примитивного типа, который можно преобразовать к типу int расширяющим преобразованием. |
final long |
getLong |
Возвращает значение поля типа long или другого примитивного типа, который можно преобразовать к типу long расширяющим преобразованием. |
final short |
getShort |
Возвращает значение поля типа short или другого примитивного типа, который можно преобразовать к типу short расширяющим преобразованием. |
final String |
getString |
Возвращает значение поля типа String. |
final RecordedThread |
getThread |
Возвращает значение поля типа Thread. |
final <T> T |
getValue |
Возвращает значение поля с указанным именем. |
boolean |
hasField |
Возвращает true, если поле с указанным именем существует, и false в противном случае. |
final String |
toString() |
Возвращает текстовое представление этого объекта. |
Подробное описание методов
hasField
public boolean hasField(String name)
true, если поле с указанным именем существует, и false в противном случае. Можно обратиться к вложенному полю, используя "." (например, "thread.group.parent.name").
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
-
true, если поле существует, иfalseв противном случае - См. также:
getValue
public final <T> T getValue(String name)
Возвращаемый тип может быть примитивным типом или подклассом RecordedObject.
Можно обратиться к вложенному объекту, используя "." (например, "thread.group.parent.name").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
Пример
if (event.hasField("intValue")) {
int intValue = event.getValue("intValue");
System.out.println("Int value: " + intValue);
}
if (event.hasField("objectClass")) {
RecordedClass clazz = event.getValue("objectClass");
System.out.println("Class name: " + clazz.getName());
}
if (event.hasField("sampledThread")) {
RecordedThread sampledThread = event.getValue("sampledThread");
System.out.println("Sampled thread: " + sampledThread.getJavaName());
}
- Параметры типа:
T— тип возвращаемого значения- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение; может быть
null - Выбрасывает:
-
IllegalArgumentException— если поле с именемnameне существует - См. также:
getFields
public List<ValueDescriptor> getFields()
- Возвращает:
- поля; не
null
getBoolean
public final boolean getBoolean(String name)
boolean. Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля:
trueилиfalse - Выбрасывает:
-
IllegalArgumentException— если поле не существует или имеет тип, отличный отboolean - См. также:
getByte
public final byte getByte(String name)
byte. Можно обратиться к вложенному объекту, используя "." (например, "foo.bar").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля
- Выбрасывает:
-
IllegalArgumentException— если поле не существует или имеет тип, отличный отbyte - См. также:
getChar
public final char getChar(String name)
char. Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля в виде
char - Выбрасывает:
-
IllegalArgumentException— если поле не существует или имеет тип, отличный отchar - См. также:
getShort
public final short getShort(String name)
short или другого примитивного типа, который можно преобразовать к типу short расширяющим преобразованием. Этот метод можно использовать для следующих типов: short и byte.
Если поле имеет аннотацию @Unsigned и его тип уже, чем short, значение возвращается как беззнаковое.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля, преобразованное к типу
short - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать к типуshortрасширяющим преобразованием - См. также:
getInt
public final int getInt(String name)
int или другого примитивного типа, который можно преобразовать к типу int расширяющим преобразованием. Этот метод можно использовать для полей следующих типов: int, short, char и byte.
Если поле имеет аннотацию @Unsigned и его тип уже, чем int, значение будет возвращено как беззнаковое.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля, преобразованное к типу
int - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать к типуintрасширяющим преобразованием - См. также:
getFloat
public final float getFloat(String name)
float или другого примитивного типа, который можно преобразовать к типу float расширяющим преобразованием. Этот метод можно использовать для полей следующих типов: float, long, int, short, char и byte.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля, преобразованное к типу
float - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать к типуfloatрасширяющим преобразованием - См. также:
getLong
public final long getLong(String name)
long или другого примитивного типа, который можно преобразовать к типу long расширяющим преобразованием. Этот метод можно использовать для полей следующих типов: long, int, short, char и byte.
Если поле имеет аннотацию @Unsigned и его тип уже, чем long, значение будет возвращено как беззнаковое.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля, преобразованное к типу
long - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать к типуlongрасширяющим преобразованием - См. также:
getDouble
public final double getDouble(String name)
double или другого примитивного типа, который можно преобразовать к типу double расширяющим преобразованием. Этот метод можно использовать для полей следующих типов: double, float, long, int, short, char и byte.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля, преобразованное к типу
double - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать к типуdoubleрасширяющим преобразованием - См. также:
getString
public final String getString(String name)
String. Можно обратиться к вложенному объекту, используя "." (например, "foo.bar").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля в виде
String; может бытьnull - Выбрасывает:
-
IllegalArgumentException— если поле не существует или имеет тип, отличный отString - См. также:
getDuration
public final Duration getDuration(String name)
Этот метод можно использовать для полей с аннотацией @Timespan и следующих типов: long, int, short, char и byte.
Если зафиксированное значение события было Long.MAX_VALUE, независимо от единицы измерения, заданной с помощью @Timespan, этот метод возвращает ChronoUnit.FOREVER.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- интервал времени, представленный объектом
Duration; неnull - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать в объектDuration - См. также:
getInstant
public final Instant getInstant(String name)
Этот метод можно использовать для полей с аннотацией @Timestamp и следующих типов: long, int, short, char и byte.
Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- временную метку, представленную объектом
Instant; неnull - Выбрасывает:
-
IllegalArgumentException— если поле не существует или значение поля нельзя преобразовать в объектInstant - См. также:
getClass
public final RecordedClass getClass(String name)
Class. Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля в виде
RecordedClass; может бытьnull - Выбрасывает:
-
IllegalArgumentException— если поле не существует или имеет тип, отличный отClass - См. также:
getThread
public final RecordedThread getThread(String name)
Thread. Можно обратиться к вложенному объекту, используя "." (например, "foo.bar").
Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.
- Параметры:
-
name— имя поля, значение которого требуется получить; неnull - Возвращает:
- значение поля в виде объекта
RecordedThread; может бытьnull - Выбрасывает:
-
IllegalArgumentException— если поле не существует или имеет тип, отличный отThread - См. также:
toString
© 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://docs.oracle.com/en/java/javase/25/docs/api/jdk.jfr/jdk/jfr/consumer/RecordedObject.html