# Interface Annotation

All Known Implementing Classes:
  `Async.Execute, Async.Schedule, Bind, Bindable, Body, Column, Concrete, Cookie, DbTransient, DELETE, Deprecated, DisableDebugInfo, DisableNullChecksAndArrayBoundsChecks, Documented, Email, Entity, ExistIn, Fused, GET, GraphQLClient, GrpcClient, Header, Id, Inherited, JsonIgnore, JsonProperty, Length, Mapped, Mutation, Numeric, Override, PATCH, Path, POST, ProtoEnum, ProtoField, ProtoMessage, PUT, Query, Query, Regex, Required, RestClient, Retention, Route, Route.Routes, RouteParam, Rpc, SafeVarargs, Subscription, SuppressWarnings, Target, Url, Validate, Var, XmlAttribute, XmlElement, XmlRoot, XmlTransient`

public interface Annotation
A mirror of java.lang.Annotation.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Class<? extends Annotation>`
  `annotationType()`
  Returns the annotation type of this annotation.
  `boolean`
  `equals(Object obj)`
  Returns true if the specified object represents an annotation that is logically equivalent to this one.
  `int`
  `hashCode()`
  Returns the hash code of this annotation, as defined below:
  `String`
  `toString()`
  Returns a string representation of this annotation.

- ## Method Details

  - ### annotationType

    Class<? extends Annotation> annotationType()
    Returns the annotation type of this annotation.

  - ### equals

    boolean equals(Object obj)
    Returns true if the specified object represents an annotation that is logically equivalent to this one.
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    int hashCode()
    Returns the hash code of this annotation, as defined below:
    Overrides:
      `hashCode` in class `Object`

  - ### toString

    String toString()
    Returns a string representation of this annotation.
    Overrides:
      `toString` in class `Object`