Интерфейс Utf8Entry
- Все суперинтерфейсы:
-
AnnotationConstantValueEntry,CharSequence,PoolEntry
public sealed interface Utf8Entry extends CharSequence, AnnotationConstantValueEntry
CONSTANT_UTF8_info, представляющую строки, в пуле констант файла class. Это описывает строки в формате Изменённый UTF-8. Использование Utf8Entry представлено объектом String. Преобразования осуществляются через ConstantPoolBuilder.utf8Entry(String) и stringValue().
Некоторые случаи использования Utf8Entry представляют собой строки описания поля или метода строки описания, символически представленные как ClassDesc или MethodTypeDesc, в зависимости от того, где появляется Utf8Entry. Записи, представляющие такие случаи, создаются с помощью ConstantPoolBuilder.utf8Entry(ClassDesc) и ConstantPoolBuilder.utf8Entry(MethodTypeDesc), и они могут быть преобразованы в символические описания в зависимости от места использования, например, в AnnotationValue.OfClass.classSymbol() и MethodModel.methodTypeSymbol().
В отличие от большинства записей пула констант, запись UTF-8 имеет переменную длину: она представляется как структура массива, со значением длины данных в байтах, за которым следуют эти байты данных в формате Изменённый UTF-8. Максимальный размер данных составляет 65535 байтов из-за физических ограничений.
- См. Спецификацию виртуальной машины Java:
- 4.4.7 Структура
CONSTANT_Utf8_info
- С:
- 24
- См. также:
Краткое описание полей
Поля, объявленные в интерфейсе java.lang.classfile.constantpool.PoolEntry
TAG_CLASS, TAG_DOUBLE, TAG_DYNAMIC, TAG_FIELDREF, TAG_FLOAT, TAG_INTEGER, TAG_INTERFACE_METHODREF, TAG_INVOKE_DYNAMIC, TAG_LONG, TAG_METHOD_HANDLE, TAG_METHOD_TYPE, TAG_METHODREF, TAG_MODULE, TAG_NAME_AND_TYPE, TAG_PACKAGE, TAG_STRING, TAG_UTF8
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equalsString |
Возвращает, описывает ли эта запись ту же строку, что и предоставленная строка. |
String |
stringValue() |
Возвращает строковое значение для этой записи. |
Методы, объявленные в интерфейсе java.lang.classfile.constantpool.AnnotationConstantValueEntry
constantValue
Методы, объявленные в интерфейсе java.lang.CharSequence
charAt, chars, codePoints, isEmpty, length, subSequence, toString
Методы, объявленные в интерфейсе java.lang.classfile.constantpool.PoolEntry
constantPool, index, tag, width
Подробное описание методов
stringValue
String stringValue()
- Примечание API:
- Объект
Utf8Entryможет быть использован непосредственно какCharSequence, если функциональностиStringне требуются. Если требуется только сравнение строк на равенство, следует использоватьequalsString. Сокращение обработки строк может значительно улучшить производительность чтения файловclass. - Возвращает:
- строковое значение для этой записи
- См. также:
equalsString
boolean equalsString(String s)
- Параметры:
-
s- строка для сравнения - Возвращает:
- описывает ли эта запись ту же строку, что и предоставленная строка
© 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/classfile/constantpool/Utf8Entry.html