Spec-Zone.ru › OpenJDK 25

Интерфейс GroupLayout

Все суперинтерфейсы:
MemoryLayout
Все известные подинтерфейсы:
StructLayout, UnionLayout
public sealed interface GroupLayout extends MemoryLayout permits StructLayout, UnionLayout
Составная раскладка, представляющая собой объединение нескольких разнородных вложенных раскладок. Вложенные раскладки можно объединить двумя способами: если они размещены одна за другой, результирующая групповая раскладка является структурной раскладкой; если же все вложенные раскладки размещены с одинакового начального смещения, результирующая групповая раскладка является объединённой раскладкой.
Требования к реализации:
Этот класс неизменяемый, потокобезопасный и основанный на значениях.
Граф запечатанной иерархии классов:
Sealed class hierarchy graph for GroupLayoutSealed class hierarchy graph for GroupLayout
Начиная с:
22

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

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

MemoryLayout.PathElement

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

Модификатор и тип Метод Описание
List<MemoryLayout> memberLayouts()
Возвращает вложенные раскладки этой групповой раскладки.
GroupLayout withByteAlignment(long byteAlignment)
Возвращает раскладку памяти с теми же характеристиками, что и у этой раскладки, но с заданным ограничением выравнивания (в байтах).
GroupLayout withName(String name)
Возвращает раскладку памяти с теми же характеристиками, что и у этой раскладки, но с заданным именем.
GroupLayout withoutName()
Возвращает раскладку памяти с теми же характеристиками, что и у этой раскладки, но без имени.

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

arrayElementVarHandle, byteAlignment, byteOffset, byteOffsetHandle, byteSize, equals, hashCode, name, scale, scaleHandle, select, sliceHandle, toString, varHandle

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

memberLayouts

List<MemoryLayout> memberLayouts()
Возвращает вложенные раскладки этой групповой раскладки.
Примечание к API:
порядок возвращаемых вложенных раскладок совпадает с порядком, в котором они были переданы одному из фабричных методов групповой раскладки (см. MemoryLayout.structLayout(MemoryLayout...) и MemoryLayout.unionLayout(MemoryLayout...)).
Возвращает:
вложенные раскладки этой групповой раскладки

withName

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

withoutName

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

withByteAlignment

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

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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/java.base/java/lang/foreign/GroupLayout.html

Spec-Zone.ru

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