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

# Interface TypeAnnotation.CatchTarget

All Superinterfaces:
  `TypeAnnotation.TargetInfo`

Enclosing interface:
  `TypeAnnotation`

public static sealed interface TypeAnnotation.CatchTarget extends TypeAnnotation.TargetInfo
Indicates that an annotation appears on the i'th type in an exception parameter declaration.

Since:
  24
See Also:
  - `TypeAnnotation.TargetInfo.ofExceptionParameter(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`
  Modifier and Type
  Field
  Description
  `static final int`
  `TARGET_CAST`
  The value of type annotation target type `CAST`.
  `static final int`
  `TARGET_CLASS_EXTENDS`
  The value of type annotation target type `CLASS_EXTENDS`.
  `static final int`
  `TARGET_CLASS_TYPE_PARAMETER`
  The value of type annotation target type `CLASS_TYPE_PARAMETER`.
  `static final int`
  `TARGET_CLASS_TYPE_PARAMETER_BOUND`
  The value of type annotation target type `CLASS_TYPE_PARAMETER_BOUND`.
  `static final int`
  `TARGET_CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT`
  The value of type annotation target type `CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT`.
  `static final int`
  `TARGET_CONSTRUCTOR_REFERENCE`
  The value of type annotation target type `CONSTRUCTOR_REFERENCE`.
  `static final int`
  `TARGET_CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT`
  The value of type annotation target type `CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT`.
  `static final int`
  `TARGET_EXCEPTION_PARAMETER`
  The value of type annotation target type `EXCEPTION_PARAMETER`.
  `static final int`
  `TARGET_FIELD`
  The value of type annotation target type `FIELD`.
  `static final int`
  `TARGET_INSTANCEOF`
  The value of type annotation target type `INSTANCEOF`.
  `static final int`
  `TARGET_LOCAL_VARIABLE`
  The value of type annotation target type `LOCAL_VARIABLE`.
  `static final int`
  `TARGET_METHOD_FORMAL_PARAMETER`
  The value of type annotation target type `METHOD_FORMAL_PARAMETER`.
  `static final int`
  `TARGET_METHOD_INVOCATION_TYPE_ARGUMENT`
  The value of type annotation target type `METHOD_INVOCATION_TYPE_ARGUMENT`.
  `static final int`
  `TARGET_METHOD_RECEIVER`
  The value of type annotation target type `METHOD_RECEIVER`.
  `static final int`
  `TARGET_METHOD_REFERENCE`
  The value of type annotation target type `METHOD_REFERENCE`.
  `static final int`
  `TARGET_METHOD_REFERENCE_TYPE_ARGUMENT`
  The value of type annotation target type `METHOD_REFERENCE_TYPE_ARGUMENT`.
  `static final int`
  `TARGET_METHOD_RETURN`
  The value of type annotation target type `METHOD_RETURN`.
  `static final int`
  `TARGET_METHOD_TYPE_PARAMETER`
  The value of type annotation target type `METHOD_TYPE_PARAMETER`.
  `static final int`
  `TARGET_METHOD_TYPE_PARAMETER_BOUND`
  The value of type annotation target type `METHOD_TYPE_PARAMETER_BOUND`.
  `static final int`
  `TARGET_NEW`
  The value of type annotation target type `NEW`.
  `static final int`
  `TARGET_RESOURCE_VARIABLE`
  The value of type annotation target type `RESOURCE_VARIABLE`.
  `static final int`
  `TARGET_THROWS`
  The value of type annotation target type `THROWS`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `exceptionTableIndex()`
  The index into the exception_table array of the Code attribute enclosing the RuntimeVisibleTypeAnnotations attribute.

  ### Methods declared in interface TypeAnnotation.TargetInfo

  `size, targetType`
  Modifier and Type
  Method
  Description
  `default int`
  `size()`
  Returns the size of the target info.
  `TypeAnnotation.TargetType`
  `targetType()`
  Returns the type of the target.

- ## Method Details

  - ### exceptionTableIndex

    int exceptionTableIndex()
    The index into the exception_table array of the Code attribute enclosing the RuntimeVisibleTypeAnnotations attribute.
    Returns:
      the index into the exception table