Spec-Zone.ru › OpenJDK 24

Интерфейс MethodModel

Все суперинтерфейсы:
AttributedElement, ClassElement, ClassFileElement, CompoundElement<MethodElement>, Iterable<MethodElement>
public sealed interface MethodModel extends CompoundElement<MethodElement>, AttributedElement, ClassElement
Моделирует метод. Метод можно рассматривать как композицию MethodElement или с помощью методов доступа для произвольного доступа, если требуется только определённая часть метода.

Методы можно получить из ClassModel.methods() или при обходе элементов членов класса.

ClassBuilder.withMethod(String, MethodTypeDesc, int, Consumer) — основной способ построения методов. ClassBuilder.transformMethod(java.lang.classfile.MethodModel, java.lang.classfile.MethodTransform) позволяет создать новый метод, выборочно обработав элементы исходного метода и направить результаты в конструктор метода.

Все атрибуты метода доступны как элементы членов.

См. Спецификацию виртуальной машины Java:
4.6 Методы
С:
24
См. также:
  • ClassModel.methods()
  • MethodTransform

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

Модификатор и тип Метод Описание
Optional<CodeModel> code()
Возвращает тело этого метода, если оно есть.
AccessFlags flags()
Возвращает флаги доступа.
Utf8Entry methodName()
Возвращает имя этого метода.
Utf8Entry methodType()
Возвращает строку описателя метода этого метода.
default MethodTypeDesc methodTypeSymbol()
Возвращает тип метода в виде символьного описателя.
Optional<ClassModel> parent()
Возвращает модель класса, членом которого является этот метод, если известна.

Методы, объявленные в интерфейсе java.lang.classfile.AttributedElement

attributes, findAttribute, findAttributes

Методы, объявленные в интерфейсе java.lang.classfile.CompoundElement

elementList, elementStream, forEach, iterator, toDebugString

Методы, объявленные в интерфейсе java.lang.Iterable

spliterator

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

flags

AccessFlags flags()
Возвращает флаги доступа.
Возвращает:
флаги доступа
См. также:
  • AccessFlag.Location.METHOD

parent

Optional<ClassModel> parent()
Возвращает модель класса, членом которого является этот метод, если известна.
Возвращает:
модель класса, членом которого является этот метод, если известна

methodName

Utf8Entry methodName()
Возвращает имя этого метода.
Возвращает:
имя этого метода

methodType

Utf8Entry methodType()
Возвращает строку описателя метода этого метода.
Возвращает:
строку описателя метода этого метода

methodTypeSymbol

default MethodTypeDesc methodTypeSymbol()
Возвращает тип метода в виде символьного описателя.
Возвращает:
тип метода в виде символьного описателя

code

Optional<CodeModel> code()
Возвращает тело этого метода, если оно есть.
Возвращает:
тело этого метода, если оно есть

© 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/MethodModel.html

Spec-Zone.ru

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