# Package org.gradle.api.reflect

Classes and API for the reflection and types.

Since:
  3.5

- Interface Summary
  Interface | Description
  --- | ---
  HasPublicType | Allows a scriptable object, such as a project extension, to declare its preferred public type.

- Class Summary
  Class | Description
  --- | ---
  TypeOf<T> | Provides a way to preserve high-fidelity `Type` information on generic types.

- Exception Summary
  Exception | Description
  --- | ---
  ObjectInstantiationException | Thrown when an object cannot be instantiated.

- Annotation Types Summary
  Annotation Type | Description
  --- | ---
  InjectionPointQualifier | The annotated annotation can be used to inject elements of the supported types.