Spec-Zone.ru › OpenJDK 25

Класс RecordedObject

java.lang.Object
jdk.jfr.consumer.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(String name)
Возвращает значение поля типа boolean.
final byte getByte(String name)
Возвращает значение поля типа byte.
final char getChar(String name)
Возвращает значение поля типа char.
final RecordedClass getClass(String name)
Возвращает значение поля типа Class.
final double getDouble(String name)
Возвращает значение поля типа double или другого примитивного типа, который можно преобразовать к типу double расширяющим преобразованием.
final Duration getDuration(String name)
Возвращает значение поля интервала времени.
List<ValueDescriptor> getFields()
Возвращает неизменяемый список полей этого объекта.
final float getFloat(String name)
Возвращает значение поля типа float или другого примитивного типа, который можно преобразовать к типу float расширяющим преобразованием.
final Instant getInstant(String name)
Возвращает значение поля временной метки.
final int getInt(String name)
Возвращает значение поля типа int или другого примитивного типа, который можно преобразовать к типу int расширяющим преобразованием.
final long getLong(String name)
Возвращает значение поля типа long или другого примитивного типа, который можно преобразовать к типу long расширяющим преобразованием.
final short getShort(String name)
Возвращает значение поля типа short или другого примитивного типа, который можно преобразовать к типу short расширяющим преобразованием.
final String getString(String name)
Возвращает значение поля типа String.
final RecordedThread getThread(String name)
Возвращает значение поля типа Thread.
final <T> T getValue(String name)
Возвращает значение поля с указанным именем.
boolean hasField(String name)
Возвращает true, если поле с указанным именем существует, и false в противном случае.
final String toString()
Возвращает текстовое представление этого объекта.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание методов

hasField

public boolean hasField(String name)
Возвращает true, если поле с указанным именем существует, и false в противном случае.

Можно обратиться к вложенному полю, используя "." (например, "thread.group.parent.name").

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
true, если поле существует, и false в противном случае
См. также:
  • getFields()

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 не существует
См. также:
  • hasField(String)

getFields

public List<ValueDescriptor> getFields()
Возвращает неизменяемый список полей этого объекта.
Возвращает:
поля; не null

getBoolean

public final boolean getBoolean(String name)
Возвращает значение поля типа boolean.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля: true или false
Выбрасывает:
IllegalArgumentException — если поле не существует или имеет тип, отличный от boolean
См. также:
  • hasField(String)
  • getValue(String)

getByte

public final byte getByte(String name)
Возвращает значение поля типа byte.

Можно обратиться к вложенному объекту, используя "." (например, "foo.bar").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля
Выбрасывает:
IllegalArgumentException — если поле не существует или имеет тип, отличный от byte
См. также:
  • hasField(String)
  • getValue(String)

getChar

public final char getChar(String name)
Возвращает значение поля типа char.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля в виде char
Выбрасывает:
IllegalArgumentException — если поле не существует или имеет тип, отличный от char
См. также:
  • hasField(String)
  • getValue(String)

getShort

public final short getShort(String name)
Возвращает значение поля типа short или другого примитивного типа, который можно преобразовать к типу short расширяющим преобразованием.

Этот метод можно использовать для следующих типов: short и byte.

Если поле имеет аннотацию @Unsigned и его тип уже, чем short, значение возвращается как беззнаковое.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля, преобразованное к типу short
Выбрасывает:
IllegalArgumentException — если поле не существует или значение поля нельзя преобразовать к типу short расширяющим преобразованием
См. также:
  • hasField(String)
  • getValue(String)

getInt

public final int getInt(String name)
Возвращает значение поля типа int или другого примитивного типа, который можно преобразовать к типу int расширяющим преобразованием.

Этот метод можно использовать для полей следующих типов: int, short, char и byte.

Если поле имеет аннотацию @Unsigned и его тип уже, чем int, значение будет возвращено как беззнаковое.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля, преобразованное к типу int
Выбрасывает:
IllegalArgumentException — если поле не существует или значение поля нельзя преобразовать к типу int расширяющим преобразованием
См. также:
  • hasField(String)
  • getValue(String)

getFloat

public final float getFloat(String name)
Возвращает значение поля типа float или другого примитивного типа, который можно преобразовать к типу float расширяющим преобразованием.

Этот метод можно использовать для полей следующих типов: float, long, int, short, char и byte.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля, преобразованное к типу float
Выбрасывает:
IllegalArgumentException — если поле не существует или значение поля нельзя преобразовать к типу float расширяющим преобразованием
См. также:
  • hasField(String)
  • getValue(String)

getLong

public final long getLong(String name)
Возвращает значение поля типа long или другого примитивного типа, который можно преобразовать к типу long расширяющим преобразованием.

Этот метод можно использовать для полей следующих типов: long, int, short, char и byte.

Если поле имеет аннотацию @Unsigned и его тип уже, чем long, значение будет возвращено как беззнаковое.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля, преобразованное к типу long
Выбрасывает:
IllegalArgumentException — если поле не существует или значение поля нельзя преобразовать к типу long расширяющим преобразованием
См. также:
  • hasField(String)
  • getValue(String)

getDouble

public final double getDouble(String name)
Возвращает значение поля типа double или другого примитивного типа, который можно преобразовать к типу double расширяющим преобразованием.

Этот метод можно использовать для полей следующих типов: double, float, long, int, short, char и byte.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля, преобразованное к типу double
Выбрасывает:
IllegalArgumentException — если поле не существует или значение поля нельзя преобразовать к типу double расширяющим преобразованием
См. также:
  • hasField(String)
  • getValue(String)

getString

public final String getString(String name)
Возвращает значение поля типа String.

Можно обратиться к вложенному объекту, используя "." (например, "foo.bar").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля в виде String; может быть null
Выбрасывает:
IllegalArgumentException — если поле не существует или имеет тип, отличный от String
См. также:
  • hasField(String)
  • getValue(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
См. также:
  • hasField(String)
  • getValue(String)

getInstant

public final Instant getInstant(String name)
Возвращает значение поля временной метки.

Этот метод можно использовать для полей с аннотацией @Timestamp и следующих типов: long, int, short, char и byte.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
временную метку, представленную объектом Instant; не null
Выбрасывает:
IllegalArgumentException — если поле не существует или значение поля нельзя преобразовать в объект Instant
См. также:
  • hasField(String)
  • getValue(String)

getClass

public final RecordedClass getClass(String name)
Возвращает значение поля типа Class.

Можно обратиться к вложенному объекту, используя "." (например, "aaa.bbb").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля в виде RecordedClass; может быть null
Выбрасывает:
IllegalArgumentException — если поле не существует или имеет тип, отличный от Class
См. также:
  • hasField(String)
  • getValue(String)

getThread

public final RecordedThread getThread(String name)
Возвращает значение поля типа Thread.

Можно обратиться к вложенному объекту, используя "." (например, "foo.bar").

Поле может измениться или быть удалено в будущей версии JDK. Рекомендуется проверять поле перед попыткой доступа к нему.

Параметры:
name — имя поля, значение которого требуется получить; не null
Возвращает:
значение поля в виде объекта RecordedThread; может быть null
Выбрасывает:
IllegalArgumentException — если поле не существует или имеет тип, отличный от Thread
См. также:
  • hasField(String)
  • getValue(String)

toString

public final String toString()
Возвращает текстовое представление этого объекта.
Переопределяет:
toString в классе Object
Возвращает:
текстовое описание этого объекта

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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

Spec-Zone.ru

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