public class javax.swing.JMenuItem$AccessibleJMenuItem extends javax.swing.AbstractButton$AccessibleAbstractButton implements javax.swing.event.ChangeListener
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.JMenuItem$AccessibleJMenuItem
  super_class: javax.swing.AbstractButton$AccessibleAbstractButton
{
  private boolean isArmed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean hasFocus;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isPressed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isSelected;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  final javax.swing.JMenuItem this$0;
    descriptor: Ljavax/swing/JMenuItem;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(javax.swing.JMenuItem);
    descriptor: (Ljavax/swing/JMenuItem;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
         0: .line 834
            aload 0 /* this */
            aload 1
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
         1: .line 835
            aload 0 /* this */
            aload 1
            invokespecial javax.swing.AbstractButton$AccessibleAbstractButton.<init>:(Ljavax/swing/AbstractButton;)V
         2: .line 829
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isArmed:Z
         3: .line 830
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.hasFocus:Z
         4: .line 831
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isPressed:Z
         5: .line 832
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isSelected:Z
         6: .line 836
            aload 1
            aload 0 /* this */
            invokevirtual javax.swing.JMenuItem.addChangeListener:(Ljavax/swing/event/ChangeListener;)V
         7: .line 837
            return
        end local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/swing/JMenuItem$AccessibleJMenuItem;
    MethodParameters:
        Name  Flags
      this$0  final

  public javax.accessibility.AccessibleRole getAccessibleRole();
    descriptor: ()Ljavax/accessibility/AccessibleRole;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
         0: .line 846
            getstatic javax.accessibility.AccessibleRole.MENU_ITEM:Ljavax/accessibility/AccessibleRole;
            areturn
        end local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/JMenuItem$AccessibleJMenuItem;

  private void fireAccessibilityFocusedEvent(javax.swing.JMenuItem);
    descriptor: (Ljavax/swing/JMenuItem;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
        start local 1 // javax.swing.JMenuItem toCheck
         0: .line 851
            invokestatic javax.swing.MenuSelectionManager.defaultManager:()Ljavax/swing/MenuSelectionManager;
            invokevirtual javax.swing.MenuSelectionManager.getSelectedPath:()[Ljavax/swing/MenuElement;
         1: .line 850
            astore 2 /* path */
        start local 2 // javax.swing.MenuElement[] path
         2: .line 852
            aload 2 /* path */
            arraylength
            ifle 9
         3: .line 853
            aload 2 /* path */
            aload 2 /* path */
            arraylength
            iconst_1
            isub
            aaload
            astore 3 /* menuItem */
        start local 3 // java.lang.Object menuItem
         4: .line 854
            aload 1 /* toCheck */
            aload 3 /* menuItem */
            if_acmpne 9
         5: .line 855
            aload 0 /* this */
         6: .line 856
            ldc "AccessibleState"
         7: .line 857
            aconst_null
            getstatic javax.accessibility.AccessibleState.FOCUSED:Ljavax/accessibility/AccessibleState;
         8: .line 855
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 3 // java.lang.Object menuItem
         9: .line 860
      StackMap locals: javax.swing.MenuElement[]
      StackMap stack:
            return
        end local 2 // javax.swing.MenuElement[] path
        end local 1 // javax.swing.JMenuItem toCheck
        end local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Ljavax/swing/JMenuItem$AccessibleJMenuItem;
            0   10     1   toCheck  Ljavax/swing/JMenuItem;
            2   10     2      path  [Ljavax/swing/MenuElement;
            4    9     3  menuItem  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      toCheck  

  public void stateChanged(javax.swing.event.ChangeEvent);
    descriptor: (Ljavax/swing/event/ChangeEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
        start local 1 // javax.swing.event.ChangeEvent e
         0: .line 866
            aload 0 /* this */
            ldc "AccessibleVisibleData"
         1: .line 867
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
         2: .line 866
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 868
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
            invokevirtual javax.swing.JMenuItem.getModel:()Ljavax/swing/ButtonModel;
            invokeinterface javax.swing.ButtonModel.isArmed:()Z
            ifeq 12
         4: .line 869
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.isArmed:Z
            ifne 18
         5: .line 870
            aload 0 /* this */
            iconst_1
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isArmed:Z
         6: .line 871
            aload 0 /* this */
         7: .line 872
            ldc "AccessibleState"
         8: .line 873
            aconst_null
            getstatic javax.accessibility.AccessibleState.ARMED:Ljavax/accessibility/AccessibleState;
         9: .line 871
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 877
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.fireAccessibilityFocusedEvent:(Ljavax/swing/JMenuItem;)V
        11: .line 879
            goto 18
        12: .line 880
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.isArmed:Z
            ifeq 18
        13: .line 881
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isArmed:Z
        14: .line 882
            aload 0 /* this */
        15: .line 883
            ldc "AccessibleState"
        16: .line 884
            getstatic javax.accessibility.AccessibleState.ARMED:Ljavax/accessibility/AccessibleState;
            aconst_null
        17: .line 882
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        18: .line 887
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
            invokevirtual javax.swing.JMenuItem.isFocusOwner:()Z
            ifeq 26
        19: .line 888
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.hasFocus:Z
            ifne 32
        20: .line 889
            aload 0 /* this */
            iconst_1
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.hasFocus:Z
        21: .line 890
            aload 0 /* this */
        22: .line 891
            ldc "AccessibleState"
        23: .line 892
            aconst_null
            getstatic javax.accessibility.AccessibleState.FOCUSED:Ljavax/accessibility/AccessibleState;
        24: .line 890
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        25: .line 894
            goto 32
        26: .line 895
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.hasFocus:Z
            ifeq 32
        27: .line 896
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.hasFocus:Z
        28: .line 897
            aload 0 /* this */
        29: .line 898
            ldc "AccessibleState"
        30: .line 899
            getstatic javax.accessibility.AccessibleState.FOCUSED:Ljavax/accessibility/AccessibleState;
            aconst_null
        31: .line 897
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        32: .line 902
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
            invokevirtual javax.swing.JMenuItem.getModel:()Ljavax/swing/ButtonModel;
            invokeinterface javax.swing.ButtonModel.isPressed:()Z
            ifeq 40
        33: .line 903
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.isPressed:Z
            ifne 46
        34: .line 904
            aload 0 /* this */
            iconst_1
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isPressed:Z
        35: .line 905
            aload 0 /* this */
        36: .line 906
            ldc "AccessibleState"
        37: .line 907
            aconst_null
            getstatic javax.accessibility.AccessibleState.PRESSED:Ljavax/accessibility/AccessibleState;
        38: .line 905
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        39: .line 909
            goto 46
        40: .line 910
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.isPressed:Z
            ifeq 46
        41: .line 911
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isPressed:Z
        42: .line 912
            aload 0 /* this */
        43: .line 913
            ldc "AccessibleState"
        44: .line 914
            getstatic javax.accessibility.AccessibleState.PRESSED:Ljavax/accessibility/AccessibleState;
            aconst_null
        45: .line 912
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        46: .line 917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
            invokevirtual javax.swing.JMenuItem.getModel:()Ljavax/swing/ButtonModel;
            invokeinterface javax.swing.ButtonModel.isSelected:()Z
            ifeq 55
        47: .line 918
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.isSelected:Z
            ifne 61
        48: .line 919
            aload 0 /* this */
            iconst_1
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isSelected:Z
        49: .line 920
            aload 0 /* this */
        50: .line 921
            ldc "AccessibleState"
        51: .line 922
            aconst_null
            getstatic javax.accessibility.AccessibleState.CHECKED:Ljavax/accessibility/AccessibleState;
        52: .line 920
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        53: .line 927
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.this$0:Ljavax/swing/JMenuItem;
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.fireAccessibilityFocusedEvent:(Ljavax/swing/JMenuItem;)V
        54: .line 929
            goto 61
        55: .line 930
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JMenuItem$AccessibleJMenuItem.isSelected:Z
            ifeq 61
        56: .line 931
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JMenuItem$AccessibleJMenuItem.isSelected:Z
        57: .line 932
            aload 0 /* this */
        58: .line 933
            ldc "AccessibleState"
        59: .line 934
            getstatic javax.accessibility.AccessibleState.CHECKED:Ljavax/accessibility/AccessibleState;
            aconst_null
        60: .line 932
            invokevirtual javax.swing.JMenuItem$AccessibleJMenuItem.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        61: .line 938
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.swing.event.ChangeEvent e
        end local 0 // javax.swing.JMenuItem$AccessibleJMenuItem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   62     0  this  Ljavax/swing/JMenuItem$AccessibleJMenuItem;
            0   62     1     e  Ljavax/swing/event/ChangeEvent;
    MethodParameters:
      Name  Flags
      e     
}
SourceFile: "JMenuItem.java"
NestHost: javax.swing.JMenuItem
InnerClasses:
  protected abstract AccessibleAbstractButton = javax.swing.AbstractButton$AccessibleAbstractButton of javax.swing.AbstractButton
  protected AccessibleJMenuItem = javax.swing.JMenuItem$AccessibleJMenuItem of javax.swing.JMenuItem