Get Generic Type : Generic « Reflection « Java

Get Generic Type

import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;

public abstract class ClassUtils {
  static public Type[] getGenericType(Class<?> target) {
    if (target == null)
      return new Type[0];
    Type[] types = target.getGenericInterfaces();
    if (types.length > 0) {
      return types;
    Type type = target.getGenericSuperclass();
    if (type != null) {
      if (type instanceof ParameterizedType) {
        return new Type[] { type };
    return new Type[0];



Related examples in the same category

1.Get Generic Super class
2.Generic Class reflection
3.Get field type and generic type by field name
4.get Return Type and get Generic Return Type
5.get Exception Types and get Generic Exception Types
6.get Parameter Types and get Generic ParameterTypes
7.Generic method reflection
8.get Generic Parameter Types from Constructor
9.Class Declaration Spy
10.All information about a class
11.Get all implemented generic interfaces
12.If right-hand side type may be assigned to the left-hand side type following the Java generics rules.
13.Get all interface and object classes that are generalizations of the provided class
14.A wrapper around reflection to resolve generics.
15.Get Parameterized Type
16.Locates generic declaration by index on a class.