Класс 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 |
Возвращает значение поля типа timespan. |
List |
getFields() |
Возвращает неизменяемый список полей для этого объекта. |
final float |
getFloat |
Возвращает значение поля типа float или другого примитивного типа, преобразуемого в тип float с помощью расширяющего преобразования. |
final Instant |
getInstant |
Возвращает значение поля типа timestamp. |
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. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- значение поля, преобразованное к типу
long - Throws:
-
IllegalArgumentException- если поле не существует или значение поля не может быть преобразовано к типуlongс помощью расширяющего преобразования - See Also:
getDouble
public final double getDouble(String name)
double или другого примитивного типа, преобразуемого к типу double с помощью расширяющего преобразования. Этот метод может использоваться для полей следующих типов: double, float, long, int, short, char и byte.
Возможен доступ к вложенному объекту с помощью "." (например, "aaa.bbb").
Поле может быть изменено или удалено в будущих релизах JDK. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- значение поля, преобразованное к типу
double - Throws:
-
IllegalArgumentException- если поле не существует или значение поля не может быть преобразовано к типуdoubleс помощью расширяющего преобразования - See Also:
getString
public final String getString(String name)
String. Возможен доступ к вложенному объекту с помощью "." (например, "foo.bar").
Поле может быть изменено или удалено в будущих релизах JDK. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- значение поля в виде
String, может бытьnull - Throws:
-
IllegalArgumentException- если поле не существует или поле не имеет типString - See Also:
getDuration
public final Duration getDuration(String name)
Этот метод может использоваться для полей, аннотированных с помощью @Timespan, и следующих типов: long, int, short, char и byte.
Если значение отслеживаемого события было Long.MAX_VALUE, независимо от единицы, установленной с помощью @Timespan, этот метод возвращает ChronoUnit.FOREVER.
Возможен доступ к вложенному объекту с помощью "." (например, "aaa.bbb").
Поле может быть изменено или удалено в будущих релизах JDK. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- интервал времени, представленный в виде
Duration, неnull - Throws:
-
IllegalArgumentException- если поле не существует или значение поля не может быть преобразовано в объектDuration - See Also:
getInstant
public final Instant getInstant(String name)
Этот метод может использоваться для полей, аннотированных с помощью @Timestamp, и следующих типов: long, int, short, char и byte.
Возможен доступ к вложенному объекту с помощью "." (например, "aaa.bbb").
Поле может быть изменено или удалено в будущих релизах JDK. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- отметка времени, представленная как
Instant, неnull - Throws:
-
IllegalArgumentException- если поле не существует или значение поля не может быть преобразовано в объектInstant - See Also:
getClass
public final RecordedClass getClass(String name)
Class. Возможен доступ к вложенному объекту с помощью "." (например, "aaa.bbb").
Поле может быть изменено или удалено в будущих релизах JDK. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- значение поля как
RecordedClass, может бытьnull - Throws:
-
IllegalArgumentException- если поле не существует или поле не имеет типClass - See Also:
getThread
public final RecordedThread getThread(String name)
Thread. Возможен доступ к вложенному объекту с помощью "." (например, "foo.bar").
Поле может быть изменено или удалено в будущих релизах JDK. Лучшей практикой для вызывающих методов является проверка поля перед его использованием.
- Parameters:
-
name- имя поля для получения, неnull - Returns:
- значение поля как объект
RecordedThread, может бытьnull - Throws:
-
IllegalArgumentException- если поле не существует или поле не имеет типThread - See Also:
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://download.java.net/java/early_access/jdk24/docs/api/jdk.jfr/jdk/jfr/consumer/RecordedObject.html