TypeAnnotation.FormalParameterTarget (Java SE 25 & JDK 25)
Description: declaration: module: java.base, package: java.lang.classfile, interface: TypeAnnotation, interface: FormalParameterTarget
Keywords: java.lang.classfile.TypeAnnotation.FormalParameterTarget interface

# Interface TypeAnnotation.FormalParameterTarget

All Superinterfaces:
  `TypeAnnotation.TargetInfo`

Enclosing interface:
  `TypeAnnotation`

public static sealed interface TypeAnnotation.FormalParameterTarget extends TypeAnnotation.TargetInfo
Indicates that an annotation appears on the type in a formal parameter declaration of a method, constructor, or lambda expression.

Since:
  24
See Also:
  - `TypeAnnotation.TargetInfo.ofMethodFormalParameter(int)`

- ## Field Summary

  ### Fields declared in interface TypeAnnotation.TargetInfo

  `TARGET_CAST, TARGET_CLASS_EXTENDS, TARGET_CLASS_TYPE_PARAMETER, TARGET_CLASS_TYPE_PARAMETER_BOUND, TARGET_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT, TARGET_CONSTRUCTOR_REFERENCE, TARGET_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT, TARGET_EXCEPTION_PARAMETER, TARGET_FIELD, TARGET_INSTANCEOF, TARGET_LOCAL_VARIABLE, TARGET_METHOD_FORMAL_PARAMETER, TARGET_METHOD_INVOCATION_TYPE_ARGUMENT, TARGET_METHOD_RECEIVER, TARGET_METHOD_REFERENCE, TARGET_METHOD_REFERENCE_TYPE_ARGUMENT, TARGET_METHOD_RETURN, TARGET_METHOD_TYPE_PARAMETER, TARGET_METHOD_TYPE_PARAMETER_BOUND, TARGET_NEW, TARGET_RESOURCE_VARIABLE, TARGET_THROWS`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `formalParameterIndex()`
  Returns the index into the formal parameter declarations, in the order declared in the source code.

  ### Methods declared in interface TypeAnnotation.TargetInfo

  `size, targetType`

- ## Method Details

  - ### formalParameterIndex

    int formalParameterIndex()
    Returns the index into the formal parameter declarations, in the order declared in the source code. The index may differ from the index in the method descriptor because some synthetic or implicit parameters are omitted.
    Returns:
      the index into the formal parameter declarations, in the order declared in the source code