Интерфейс CodeAttribute
- Все суперинтерфейсы:
-
Attribute<CodeAttribute>,AttributedElement,ClassFileElement,CodeModel,CompoundElement<CodeElement>,Iterable<CodeElement>,MethodElement
public sealed interface CodeAttribute extends Attribute<CodeAttribute>, CodeModel
Моделирует атрибут
Code (JVMS 4.7.3), содержащий байткод этого метода. Этот атрибут появляется только в методах и не допускает несколько экземпляров в методе. Он имеет зависимость от данных от константного пула.
Этот атрибут был введён в версии Java Platform 1.0.2, мажорная версия 45.
- Примечание API:
-
CodeAttributeмоделирует свойства атрибутаCode, считанного из файловclass. Общее преобразование файловclassдолжно обрабатывать и проходить поCodeModelпри прохождении поMethodModel, чтобы поддерживать преобразование атрибутовCode, которые сейчас строятся. - См. Спецификацию виртуальной машины Java:
- 4.7.3 Атрибут
Code
- С:
- 24
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
byte[] |
codeArray() |
Возвращает байты (байткод) массива кода. |
int |
codeLength() |
Возвращает длину массива кода в байтах. |
int |
labelToBci |
Возвращает позицию label в codeArray. |
int |
maxLocals() |
Возвращает максимальный размер таблицы локальных переменных. |
int |
maxStack() |
Возвращает максимальный размер стека операндов. |
Методы, объявленные в интерфейсе java.lang.classfile.Attribute
attributeMapper, attributeName
Методы, объявленные в интерфейсе java.lang.classfile.AttributedElement
attributes, findAttribute, findAttributes
Методы, объявленные в интерфейсе java.lang.classfile.CodeModel
exceptionHandlers, parent
Методы, объявленные в интерфейсе java.lang.classfile.CompoundElement
elementList, elementStream, forEach, iterator, toDebugString
Методы, объявленные в интерфейсе java.lang.Iterable
spliterator
Подробное описание методов
maxLocals
int maxLocals()
Возвращает максимальный размер таблицы локальных переменных.
- Возвращает:
- максимальный размер таблицы локальных переменных
maxStack
int maxStack()
Возвращает максимальный размер стека операндов.
- Возвращает:
- максимальный размер стека операндов
codeLength
int codeLength()
Возвращает длину массива кода в байтах.
- Возвращает:
- Длина массива кода в байтах
codeArray
byte[] codeArray()
Возвращает байты (байткод) массива кода.
- Возвращает:
- байты (байткод) массива кода
labelToBci
int labelToBci(Label label)
Возвращает позицию
label в codeArray. Метка представляет собой курсор, указывающий на позицию непосредственно перед возвращаемым индексом в массив code.- Параметры:
-
label- маркер для позиции внутри этогоCodeAttribute - Возвращает:
- позицию
labelвcodeArray - Исключения:
-
IllegalArgumentException- еслиlabelне из этого атрибута
© 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/attribute/CodeAttribute.html