Spec-Zone.ru › OpenJDK 27

Интерфейс ValueLayout.OfChar

Все суперинтерфейсы:
MemoryLayout, ValueLayout
Включающий интерфейс:
ValueLayout
public static sealed interface ValueLayout.OfChar extends ValueLayout
Макет значения, носителем которого является char.class.
Начиная с:
22
См. также:
  • ValueLayout.JAVA_CHAR
  • ValueLayout.JAVA_CHAR_UNALIGNED

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в интерфейсе MemoryLayout

MemoryLayout.PathElement
Модификатор и тип Интерфейс Описание
static interface  MemoryLayout.PathElement
Элемент в пути макета.

Вложенные классы/интерфейсы, объявленные в интерфейсе ValueLayout

ValueLayout.OfBoolean, ValueLayout.OfByte, ValueLayout.OfChar, ValueLayout.OfDouble, ValueLayout.OfFloat, ValueLayout.OfInt, ValueLayout.OfLong, ValueLayout.OfShort
Модификатор и тип Интерфейс Описание
static interface  ValueLayout.OfBoolean
Макет значения, носителем которого является boolean.class.
static interface  ValueLayout.OfByte
Макет значения, носителем которого является byte.class.
static interface  ValueLayout.OfChar
Макет значения, носителем которого является char.class.
static interface  ValueLayout.OfDouble
Макет значения, носителем которого является double.class.
static interface  ValueLayout.OfFloat
Макет значения, носителем которого является float.class.
static interface  ValueLayout.OfInt
Макет значения, носителем которого является int.class.
static interface  ValueLayout.OfLong
Макет значения, носителем которого является long.class.
static interface  ValueLayout.OfShort
Макет значения, носителем которого является short.class.

Краткое описание полей

Поля, объявленные в интерфейсе ValueLayout

ADDRESS, ADDRESS_UNALIGNED, JAVA_BOOLEAN, JAVA_BYTE, JAVA_CHAR, JAVA_CHAR_UNALIGNED, JAVA_DOUBLE, JAVA_DOUBLE_UNALIGNED, JAVA_FLOAT, JAVA_FLOAT_UNALIGNED, JAVA_INT, JAVA_INT_UNALIGNED, JAVA_LONG, JAVA_LONG_UNALIGNED, JAVA_SHORT, JAVA_SHORT_UNALIGNED
Модификатор и тип Поле Описание
static final AddressLayout ADDRESS
Константа макета адреса, размер которой совпадает с размером машинного адреса (size_t), выравнивание по байтам установлено в sizeof(size_t), порядок байтов установлен в ByteOrder.nativeOrder().
static final AddressLayout ADDRESS_UNALIGNED
Константа невыровненного макета адреса, размер которой совпадает с размером машинного адреса (size_t), а порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout.OfBoolean JAVA_BOOLEAN
Константа макета значения, размер которой совпадает с размером Java boolean, выравнивание по байтам установлено в 1, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfByte JAVA_BYTE
Константа макета значения, размер которой совпадает с размером Java byte, выравнивание по байтам установлено в 1, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfChar JAVA_CHAR
Константа макета значения, размер которой совпадает с размером Java char, выравнивание по байтам установлено в 2, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfChar JAVA_CHAR_UNALIGNED
Константа невыровненного макета значения, размер которой совпадает с размером Java char, а порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout.OfDouble JAVA_DOUBLE
Константа макета значения, размер которой совпадает с размером Java double, выравнивание по байтам установлено в 8, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfDouble JAVA_DOUBLE_UNALIGNED
Константа невыровненного макета значения, размер которой совпадает с размером Java double, а порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout.OfFloat JAVA_FLOAT
Константа макета значения, размер которой совпадает с размером Java float, выравнивание по байтам установлено в 4, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfFloat JAVA_FLOAT_UNALIGNED
Константа невыровненного макета значения, размер которой совпадает с размером Java float, а порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout.OfInt JAVA_INT
Константа макета значения, размер которой совпадает с размером Java int, выравнивание по байтам установлено в 4, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfInt JAVA_INT_UNALIGNED
Константа невыровненного макета значения, размер которой совпадает с размером Java int, а порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout.OfLong JAVA_LONG
Константа макета значения, размер которой совпадает с размером Java long, выравнивание по байтам установлено в 8, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfLong JAVA_LONG_UNALIGNED
Константа невыровненного макета значения, размер которой совпадает с размером Java long, а порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout.OfShort JAVA_SHORT
Константа макета значения, размер которой совпадает с размером Java short, выравнивание по байтам установлено в 2, а порядок байтов — в ByteOrder.nativeOrder().
static final ValueLayout.OfShort JAVA_SHORT_UNALIGNED
Константа невыровненного макета значения, размер которой совпадает с размером Java short, а порядок байтов установлен в ByteOrder.nativeOrder().

Краткое описание методов

Модификатор и тип Метод Описание
ValueLayout.OfChar withByteAlignment(long byteAlignment)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным ограничением выравнивания (в байтах).
ValueLayout.OfChar withName(String name)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным именем.
ValueLayout.OfChar withOrder(ByteOrder order)
Возвращает макет значения с теми же характеристиками, что и этот макет, но с заданным порядком байтов.
ValueLayout.OfChar withoutName()
Возвращает макет памяти с теми же характеристиками, что и этот макет, но без имени.

Методы, объявленные в интерфейсе MemoryLayout

arrayElementVarHandle, byteAlignment, byteOffset, byteOffsetHandle, byteSize, equals, hashCode, name, scale, scaleHandle, select, sliceHandle, toString, varHandle
Модификатор и тип Метод Описание
VarHandle arrayElementVarHandle(MemoryLayout.PathElement... elements)
Создаёт дескриптор переменной, обращающийся к соседним элементам сегмента памяти по смещениям, выбранным заданным путём макета. Доступные элементы имеют этот макет, а начальный макет в пути совпадает с этим макетом.
long byteAlignment()
Возвращает ограничение выравнивания, связанное с этим макетом, выраженное в байтах.
long byteOffset(MemoryLayout.PathElement... elements)
Вычисляет смещение в байтах макета, выбранного заданным путём макета, при этом начальный макет в пути совпадает с этим макетом.
MethodHandle byteOffsetHandle(MemoryLayout.PathElement... elements)
Создаёт дескриптор метода, вычисляющий смещение в байтах макета, выбранного заданным путём макета, при этом начальный макет в пути совпадает с этим макетом.
long byteSize()
Возвращает размер макета в байтах.
boolean equals(Object other)
Сравнивает указанный объект с этим макетом на равенство.
int hashCode()
Возвращает хеш-код этого макета.
Optional<String> name()
Возвращает имя, связанное с этим макетом (если оно есть).
long scale(long offset, long index)
Возвращает offset + (byteSize() * index).
MethodHandle scaleHandle()
Возвращает дескриптор метода, который можно использовать для вызова MemoryLayout.scale(long, long) для этого макета.
MemoryLayout select(MemoryLayout.PathElement... elements)
Возвращает макет, выбранный по указанному пути, при этом начальный макет в пути совпадает с этим макетом.
MethodHandle sliceHandle(MemoryLayout.PathElement... elements)
Создаёт дескриптор метода, который принимает сегмент памяти и возвращает срез, соответствующий макету, выбранному заданным путём макета, при этом начальный макет в пути совпадает с этим макетом.
String toString()
Возвращает строковое представление этого макета.
VarHandle varHandle(MemoryLayout.PathElement... elements)
Создаёт дескриптор переменной, обращающийся к сегменту памяти по смещению, выбранному заданным путём макета, при этом начальный макет в пути совпадает с этим макетом.

Методы, объявленные в интерфейсе ValueLayout

carrier, order, varHandle
Модификатор и тип Метод Описание
Class<?> carrier()
Возвращает тип-носитель, связанный с этим макетом значения.
ByteOrder order()
Возвращает порядок байтов значения.
VarHandle varHandle()
Возвращает дескриптор переменной, который можно использовать для доступа к значениям, описанным этим макетом значения, в заданном сегменте памяти.

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

withName

ValueLayout.OfChar withName(String name)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным именем.
Определено в:
withName в интерфейсе MemoryLayout
Определено в:
withName в интерфейсе ValueLayout
Параметры:
name — имя макета
Возвращает:
макет памяти с теми же характеристиками, что и этот макет, но с заданным именем
См. также:
  • MemoryLayout.name()

withoutName

ValueLayout.OfChar withoutName()
Возвращает макет памяти с теми же характеристиками, что и этот макет, но без имени.
Определено в:
withoutName в интерфейсе MemoryLayout
Определено в:
withoutName в интерфейсе ValueLayout
Возвращает:
макет памяти с теми же характеристиками, что и этот макет, но без имени
См. также:
  • MemoryLayout.name()

withByteAlignment

ValueLayout.OfChar withByteAlignment(long byteAlignment)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным ограничением выравнивания (в байтах).
Определено в:
withByteAlignment в интерфейсе MemoryLayout
Определено в:
withByteAlignment в интерфейсе ValueLayout
Параметры:
byteAlignment — ограничение выравнивания макета, выраженное в байтах
Возвращает:
макет памяти с теми же характеристиками, что и этот макет, но с заданным ограничением выравнивания (в байтах)
Выбрасывает:
IllegalArgumentException — если byteAlignment не является степенью двойки

withOrder

ValueLayout.OfChar withOrder(ByteOrder order)
Возвращает макет значения с теми же характеристиками, что и этот макет, но с заданным порядком байтов.
Определено в:
withOrder в интерфейсе ValueLayout
Параметры:
order — требуемый порядок байтов
Возвращает:
макет значения с теми же характеристиками, что и этот макет, но с заданным порядком байтов

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, 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.

Spec-Zone.ru

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