Интерфейс MethodBuilder
- Все суперинтерфейсы:
ClassFileBuilder<MethodElement, MethodBuilder>, Consumer<MethodElement>
public sealed interface MethodBuilder extends ClassFileBuilder<MethodElement, MethodBuilder>
Построитель методов. Основной способ получить построитель метода — использовать
ClassBuilder.withMethod(String, MethodTypeDesc, int, Consumer). ClassBuilder.withMethodBody(String, MethodTypeDesc, int, Consumer) полезен, если не требуется настраивать атрибуты метода, кроме Code, поскольку при этом можно пропустить обработчик метода. Общие рекомендации и предостережения по использованию построителей для структур в формате файла class приведены в ClassFileBuilder.
- См. Спецификацию виртуальной машины Java:
- 4.6 Методы
- Начиная с версии:
- 24
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
MethodBuilder |
transformCode |
Построить тело этого метода, преобразовав тело другого метода. |
MethodBuilder |
withCode |
Построить тело этого метода. |
default MethodBuilder |
withFlags |
Задать флаги доступа метода. |
default MethodBuilder |
withFlags |
Задать флаги доступа метода. |
Методы, объявленные в интерфейсе ClassFileBuilder
accept, constantPool, transform, with
Подробное описание методов
withFlags
default MethodBuilder withFlags(int flags)
Задать флаги доступа метода. Флаг
AccessFlag.STATIC нельзя изменить после создания построителя.- Параметры:
-
flags— флаги доступа в виде битовой маски - Возвращает:
- этот построитель
- Исключения:
-
IllegalArgumentException— если изменён флагACC_STATIC - См. также:
withFlags
default MethodBuilder withFlags(AccessFlag... flags)
Задать флаги доступа метода. Флаг
AccessFlag.STATIC нельзя изменить после создания построителя.- Параметры:
-
flags— флаги доступа в виде битовой маски - Возвращает:
- этот построитель
- Исключения:
-
IllegalArgumentException— если изменён флагACC_STATIC - См. также:
withCode
MethodBuilder withCode(Consumer<? super CodeBuilder> code)
Построить тело этого метода.
- Параметры:
-
code— обработчик, получающийCodeBuilder - Возвращает:
- этот построитель
- См. также:
transformCode
MethodBuilder transformCode(CodeModel code, CodeTransform transform)
Построить тело этого метода, преобразовав тело другого метода.
Этот метод работает так, как если бы:
withCode(cob -> cob.transform(code, transform));
- Параметры:
-
code— тело метода, которое нужно преобразовать -
transform— преобразование, применяемое к телу метода - Возвращает:
- этот построитель
- См. также:
© 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/classfile/MethodBuilder.html