W3cubDocs

/OpenJDK 25

Interface MethodModel

All Superinterfaces:
AttributedElement, ClassElement, ClassFileElement, CompoundElement<MethodElement>, Iterable<MethodElement>
public sealed interface MethodModel extends CompoundElement<MethodElement>, AttributedElement, ClassElement
Models a method. A method can be viewed as a composition of MethodElements, or by random access via accessor methods if only specific parts of the method is needed.

Methods can be obtained from ClassModel.methods(), or in the traversal of member elements of a class.

ClassBuilder.withMethod(String, MethodTypeDesc, int, Consumer) is the main way to construct methods. ClassBuilder.transformMethod(MethodModel, MethodTransform) allows creating a new method by selectively processing the original method elements and directing the results to a method builder.

All method attributes are accessible as member elements.

See Java Virtual Machine Specification:
4.6 Methods
Since:
24
See Also:

Method Summary

Modifier and Type Method Description
Optional<CodeModel> code()
Returns the body of this method, if there is one.
AccessFlags flags()
Returns the access flags.
Utf8Entry methodName()
Returns the name of this method.
Utf8Entry methodType()
Returns the method descriptor string of this method.
default MethodTypeDesc methodTypeSymbol()
Returns the method type, as a symbolic descriptor.
Optional<ClassModel> parent()
Returns the class model this method is a member of, if known.

Methods declared in interface AttributedElement

attributes, findAttribute, findAttributes

Methods declared in interface Iterable

spliterator

Method Details

flags

AccessFlags flags()
Returns the access flags.
Returns:
the access flags
See Also:

parent

Optional<ClassModel> parent()
Returns the class model this method is a member of, if known.
Returns:
the class model this method is a member of, if known

methodName

Utf8Entry methodName()
Returns the name of this method.
Returns:
the name of this method

methodType

Utf8Entry methodType()
Returns the method descriptor string of this method.
Returns:
the method descriptor string of this method

methodTypeSymbol

default MethodTypeDesc methodTypeSymbol()
Returns the method type, as a symbolic descriptor.
Returns:
the method type, as a symbolic descriptor

code

Optional<CodeModel> code()
Returns the body of this method, if there is one.
Returns:
the body of this method, if there is one

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