Spec-Zone.ru › OpenJDK 17

Класс MemoryLayouts

java.lang.Object
jdk.incubator.foreign.MemoryLayouts
public final class MemoryLayouts extends Object
Этот класс определяет полезные константы макета. Некоторые из констант, определённых в этом классе, явным образом указывают размер и порядок байтов (см. BITS_64_BE), и поэтому их можно использовать для явного и однозначного задания содержимого сегмента памяти. Другие константы предполагают неявный порядок байтов (см. JAVA_INT); таким образом, эти константы облегчают работу с другими API, ориентированными на сериализацию, такими как ByteBuffer.

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

Модификатор и тип Поле Описание
static final ValueLayout ADDRESS
Константа макета значения, размер которого такой же, как у машинного адреса (например,
static final ValueLayout BITS_16_BE
Константа макета значения размером в два байта и порядком байтов, установленным в ByteOrder.BIG_ENDIAN.
static final ValueLayout BITS_16_LE
Константа макета значения размером в два байта и порядком байтов, установленным в ByteOrder.LITTLE_ENDIAN.
static final ValueLayout BITS_32_BE
Константа макета значения размером в четыре байта и порядком байтов, установленным в ByteOrder.BIG_ENDIAN.
static final ValueLayout BITS_32_LE
Константа макета значения размером в четыре байта и порядком байтов, установленным в ByteOrder.LITTLE_ENDIAN.
static final ValueLayout BITS_64_BE
Константа макета значения размером в восемь байт и порядком байтов, установленным в ByteOrder.BIG_ENDIAN.
static final ValueLayout BITS_64_LE
Константа макета значения размером в восемь байт и порядком байтов, установленным в ByteOrder.LITTLE_ENDIAN.
static final ValueLayout BITS_8_BE
Константа макета значения размером в один байт и порядком байтов, установленным в ByteOrder.BIG_ENDIAN.
static final ValueLayout BITS_8_LE
Константа макета значения размером в один байт и порядком байтов, установленным в ByteOrder.LITTLE_ENDIAN.
static final ValueLayout JAVA_BYTE
Константа макета значения, размер которого такой же, как у Java byte, и порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout JAVA_CHAR
Константа макета значения, размер которого такой же, как у Java char, и порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout JAVA_DOUBLE
Константа макета значения, размер которого такой же, как у Java double, и порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout JAVA_FLOAT
Константа макета значения, размер которого такой же, как у Java float, и порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout JAVA_INT
Константа макета значения, размер которого такой же, как у Java int, и порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout JAVA_LONG
Константа макета значения, размер которого такой же, как у Java long, и порядок байтов установлен в ByteOrder.nativeOrder().
static final ValueLayout JAVA_SHORT
Константа макета значения, размер которого такой же, как у Java short, и порядок байтов установлен в ByteOrder.nativeOrder().
static final MemoryLayout PAD_16
Константа макета заполнения размером в два байта.
static final MemoryLayout PAD_32
Константа макета заполнения размером в четыре байта.
static final MemoryLayout PAD_64
Константа макета заполнения размером в восемь байт.
static final MemoryLayout PAD_8
Константа макета заполнения размером в один байт.

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

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

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

Подробное описание полей

BITS_8_LE

public static final ValueLayout BITS_8_LE
Константа макета значения размером один байт, и порядок байтов установлен в ByteOrder.LITTLE_ENDIAN.

BITS_16_LE

public static final ValueLayout BITS_16_LE
Константа макета значения размером два байта, и порядок байтов установлен в ByteOrder.LITTLE_ENDIAN.

BITS_32_LE

public static final ValueLayout BITS_32_LE
Константа макета значения размером четыре байта, и порядок байтов установлен в ByteOrder.LITTLE_ENDIAN.

BITS_64_LE

public static final ValueLayout BITS_64_LE
Константа макета значения размером восемь байтов, и порядок байтов установлен в ByteOrder.LITTLE_ENDIAN.

BITS_8_BE

public static final ValueLayout BITS_8_BE
Константа макета значения размером один байт, и порядок байтов установлен в ByteOrder.BIG_ENDIAN.

BITS_16_BE

public static final ValueLayout BITS_16_BE
Константа макета значения размером два байта, и порядок байтов установлен в ByteOrder.BIG_ENDIAN.

BITS_32_BE

public static final ValueLayout BITS_32_BE
Константа макета значения размером четыре байта, и порядок байтов установлен в ByteOrder.BIG_ENDIAN.

BITS_64_BE

public static final ValueLayout BITS_64_BE
Константа макета значения размером восемь байтов, и порядок байтов установлен в ByteOrder.BIG_ENDIAN.

PAD_8

public static final MemoryLayout PAD_8
Константа макета заполнения размером один байт.

PAD_16

public static final MemoryLayout PAD_16
Константа макета заполнения размером два байта.

PAD_32

public static final MemoryLayout PAD_32
Константа макета заполнения размером четыре байта.

PAD_64

public static final MemoryLayout PAD_64
Константа макета заполнения размером восемь байтов.

ADDRESS

public static final ValueLayout ADDRESS
Константа макета значения, размер которого такой же, как у машинного адреса (например, size_t), и порядок байтов установлен в ByteOrder.nativeOrder().

JAVA_BYTE

public static final ValueLayout JAVA_BYTE
Константа макета значения, размер которого такой же, как у Java byte, и порядок байтов установлен в ByteOrder.nativeOrder().

JAVA_CHAR

public static final ValueLayout JAVA_CHAR
Константа макета значения, размер которого такой же, как у Java char, и порядок байтов установлен в ByteOrder.nativeOrder().

JAVA_SHORT

public static final ValueLayout JAVA_SHORT
Константа макета значения, размер которого такой же, как у Java short, и порядок байтов установлен в ByteOrder.nativeOrder().

JAVA_INT

public static final ValueLayout JAVA_INT
Константа макета значения, размер которого такой же, как у Java int, и порядок байтов установлен в ByteOrder.nativeOrder().

JAVA_LONG

public static final ValueLayout JAVA_LONG
Константа макета значения, размер которого такой же, как у Java long, и порядок байтов установлен в ByteOrder.nativeOrder(). Выравнивание этого макета (см. MemoryLayout.byteAlignment()) зависит от платформы, так что выполняется следующее инвариантное условие:

    MemoryLayouts.JAVA_LONG.byteAlignment() == MemoryLayouts.ADDRESS.byteSize();
 

JAVA_FLOAT

public static final ValueLayout JAVA_FLOAT
Константа макета значения, размер которого такой же, как у Java float, и порядок байтов установлен в ByteOrder.nativeOrder().

JAVA_DOUBLE

public static final ValueLayout JAVA_DOUBLE
Константа макета значения, размер которого такой же, как у Java double, и порядок байтов установлен в ByteOrder.nativeOrder(). Выравнивание этого макета (см. MemoryLayout.byteAlignment()) зависит от платформы, так что выполняется следующее инвариантное условие:

    MemoryLayouts.JAVA_DOUBLE.byteAlignment() == MemoryLayouts.ADDRESS.byteSize();
 

© 1993, 2021, 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/17/docs/api/jdk.incubator.foreign/jdk/incubator/foreign/MemoryLayouts.html

Spec-Zone.ru

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