class java.lang.Class$ReflectionData<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.lang.Class$ReflectionData
  super_class: java.lang.Object
{
  volatile java.lang.reflect.Field[] declaredFields;
    descriptor: [Ljava/lang/reflect/Field;
    flags: (0x0040) ACC_VOLATILE

  volatile java.lang.reflect.Field[] publicFields;
    descriptor: [Ljava/lang/reflect/Field;
    flags: (0x0040) ACC_VOLATILE

  volatile java.lang.reflect.Method[] declaredMethods;
    descriptor: [Ljava/lang/reflect/Method;
    flags: (0x0040) ACC_VOLATILE

  volatile java.lang.reflect.Method[] publicMethods;
    descriptor: [Ljava/lang/reflect/Method;
    flags: (0x0040) ACC_VOLATILE

  volatile java.lang.reflect.Constructor<T>[] declaredConstructors;
    descriptor: [Ljava/lang/reflect/Constructor;
    flags: (0x0040) ACC_VOLATILE
    Signature: [Ljava/lang/reflect/Constructor<TT;>;

  volatile java.lang.reflect.Constructor<T>[] publicConstructors;
    descriptor: [Ljava/lang/reflect/Constructor;
    flags: (0x0040) ACC_VOLATILE
    Signature: [Ljava/lang/reflect/Constructor<TT;>;

  volatile java.lang.reflect.Field[] declaredPublicFields;
    descriptor: [Ljava/lang/reflect/Field;
    flags: (0x0040) ACC_VOLATILE

  volatile java.lang.reflect.Method[] declaredPublicMethods;
    descriptor: [Ljava/lang/reflect/Method;
    flags: (0x0040) ACC_VOLATILE

  volatile java.lang.Class<?>[] interfaces;
    descriptor: [Ljava/lang/Class;
    flags: (0x0040) ACC_VOLATILE
    Signature: [Ljava/lang/Class<*>;

  java.lang.String simpleName;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  java.lang.String canonicalName;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  static final java.lang.String NULL_SENTINEL;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  final int redefinedCount;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 2956
            new java.lang.String
            dup
            invokespecial java.lang.String.<init>:()V
            putstatic java.lang.Class$ReflectionData.NULL_SENTINEL:Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Class$ReflectionData this
        start local 1 // int redefinedCount
         0: .line 2961
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 2962
            aload 0 /* this */
            iload 1 /* redefinedCount */
            putfield java.lang.Class$ReflectionData.redefinedCount:I
         2: .line 2963
            return
        end local 1 // int redefinedCount
        end local 0 // java.lang.Class$ReflectionData this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Ljava/lang/Class$ReflectionData<TT;>;
            0    3     1  redefinedCount  I
    MethodParameters:
                Name  Flags
      redefinedCount  
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "Class.java"
NestHost: java.lang.Class
InnerClasses:
  private ReflectionData = java.lang.Class$ReflectionData of java.lang.Class