public final class jdk.internal.ref.CleanerFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jdk.internal.ref.CleanerFactory
  super_class: java.lang.Object
{
  private static final java.lang.ref.Cleaner commonCleaner;
    descriptor: Ljava/lang/ref/Cleaner;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 42
            new jdk.internal.ref.CleanerFactory$1
            dup
            invokespecial jdk.internal.ref.CleanerFactory$1.<init>:()V
            invokestatic java.lang.ref.Cleaner.create:(Ljava/util/concurrent/ThreadFactory;)Ljava/lang/ref/Cleaner;
            putstatic jdk.internal.ref.CleanerFactory.commonCleaner:Ljava/lang/ref/Cleaner;
         1: .line 54
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.ref.CleanerFactory this
         0: .line 39
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // jdk.internal.ref.CleanerFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/ref/CleanerFactory;

  public static java.lang.ref.Cleaner cleaner();
    descriptor: ()Ljava/lang/ref/Cleaner;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 66
            getstatic jdk.internal.ref.CleanerFactory.commonCleaner:Ljava/lang/ref/Cleaner;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "CleanerFactory.java"
NestMembers:
  jdk.internal.ref.CleanerFactory$1  jdk.internal.ref.CleanerFactory$1$1
InnerClasses:
  jdk.internal.ref.CleanerFactory$1