public abstract class javax.sound.midi.Instrument extends javax.sound.midi.SoundbankResource
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: javax.sound.midi.Instrument
  super_class: javax.sound.midi.SoundbankResource
{
  private final javax.sound.midi.Patch patch;
    descriptor: Ljavax/sound/midi/Patch;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(javax.sound.midi.Soundbank, javax.sound.midi.Patch, java.lang.String, java.lang.Class<?>);
    descriptor: (Ljavax/sound/midi/Soundbank;Ljavax/sound/midi/Patch;Ljava/lang/String;Ljava/lang/Class;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // javax.sound.midi.Instrument this
        start local 1 // javax.sound.midi.Soundbank soundbank
        start local 2 // javax.sound.midi.Patch patch
        start local 3 // java.lang.String name
        start local 4 // java.lang.Class dataClass
         0: .line 67
            aload 0 /* this */
            aload 1 /* soundbank */
            aload 3 /* name */
            aload 4 /* dataClass */
            invokespecial javax.sound.midi.SoundbankResource.<init>:(Ljavax/sound/midi/Soundbank;Ljava/lang/String;Ljava/lang/Class;)V
         1: .line 68
            aload 0 /* this */
            aload 2 /* patch */
            putfield javax.sound.midi.Instrument.patch:Ljavax/sound/midi/Patch;
         2: .line 69
            return
        end local 4 // java.lang.Class dataClass
        end local 3 // java.lang.String name
        end local 2 // javax.sound.midi.Patch patch
        end local 1 // javax.sound.midi.Soundbank soundbank
        end local 0 // javax.sound.midi.Instrument this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljavax/sound/midi/Instrument;
            0    3     1  soundbank  Ljavax/sound/midi/Soundbank;
            0    3     2      patch  Ljavax/sound/midi/Patch;
            0    3     3       name  Ljava/lang/String;
            0    3     4  dataClass  Ljava/lang/Class<*>;
    Signature: (Ljavax/sound/midi/Soundbank;Ljavax/sound/midi/Patch;Ljava/lang/String;Ljava/lang/Class<*>;)V
    MethodParameters:
           Name  Flags
      soundbank  
      patch      
      name       
      dataClass  

  public javax.sound.midi.Patch getPatch();
    descriptor: ()Ljavax/sound/midi/Patch;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.sound.midi.Instrument this
         0: .line 78
            aload 0 /* this */
            getfield javax.sound.midi.Instrument.patch:Ljavax/sound/midi/Patch;
            areturn
        end local 0 // javax.sound.midi.Instrument this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/sound/midi/Instrument;
}
SourceFile: "Instrument.java"