Интерфейс StructLayout
- Все суперинтерфейсы:
GroupLayout, MemoryLayout
public sealed interface StructLayout extends GroupLayout
Групповая раскладка, элементы которой располагаются друг за другом.
- Требования к реализации:
- Реализующие классы являются неизменяемыми, потокобезопасными и основанными на значениях.
- С версии:
- 22
Краткое описание вложенных классов
Вложенные классы и интерфейсы, объявленные в интерфейсе MemoryLayout
MemoryLayout.PathElement
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
StructLayout |
withByteAlignment |
Возвращает раскладку памяти с теми же характеристиками, что и эта раскладка, но с заданным ограничением выравнивания (в байтах). |
StructLayout |
withName |
Возвращает раскладку памяти с теми же характеристиками, что и эта раскладка, но с заданным именем. |
StructLayout |
withoutName() |
Возвращает раскладку памяти с теми же характеристиками, что и эта раскладка, но без имени. |
Методы, объявленные в интерфейсе GroupLayout
memberLayouts
Методы, объявленные в интерфейсе MemoryLayout
arrayElementVarHandle, byteAlignment, byteOffset, byteOffsetHandle, byteSize, equals, hashCode, name, scale, scaleHandle, select, sliceHandle, toString, varHandle
Подробное описание методов
withName
StructLayout withName(String name)
Возвращает раскладку памяти с теми же характеристиками, что и эта раскладка, но с заданным именем.
- Определено в:
-
withNameв интерфейсеGroupLayout - Определено в:
-
withNameв интерфейсеMemoryLayout - Параметры:
-
name— имя раскладки - Возвращает:
- раскладку памяти с теми же характеристиками, что и эта раскладка, но с заданным именем
- См. также:
withoutName
StructLayout withoutName()
Возвращает раскладку памяти с теми же характеристиками, что и эта раскладка, но без имени.
- Определено в:
-
withoutNameв интерфейсеGroupLayout - Определено в:
-
withoutNameв интерфейсеMemoryLayout - Возвращает:
- раскладку памяти с теми же характеристиками, что и эта раскладка, но без имени
- См. также:
withByteAlignment
StructLayout withByteAlignment(long byteAlignment)
Возвращает раскладку памяти с теми же характеристиками, что и эта раскладка, но с заданным ограничением выравнивания (в байтах).
- Определено в:
-
withByteAlignmentв интерфейсеGroupLayout - Определено в:
-
withByteAlignmentв интерфейсеMemoryLayout - Параметры:
-
byteAlignment— ограничение выравнивания раскладки, выраженное в байтах - Возвращает:
- раскладку памяти с теми же характеристиками, что и эта раскладка, но с заданным ограничением выравнивания (в байтах)
- Исключения:
-
IllegalArgumentException— еслиbyteAlignmentне является степенью двойки -
IllegalArgumentException— еслиbyteAlignmentменьшеM, гдеM— максимальное ограничение выравнивания среди любых раскладок-членов, связанных с этой групповой раскладкой
© 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/StructLayout.html