abstract class javax.swing.ActionPropertyChangeListener<T extends javax.swing.JComponent> implements java.beans.PropertyChangeListener, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: javax.swing.ActionPropertyChangeListener
super_class: java.lang.Object
{
private static java.lang.ref.ReferenceQueue<javax.swing.JComponent> queue;
descriptor: Ljava/lang/ref/ReferenceQueue;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/lang/ref/ReferenceQueue<Ljavax/swing/JComponent;>;
private transient javax.swing.ActionPropertyChangeListener$OwnedWeakReference<T> target;
descriptor: Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference<TT;>;
private javax.swing.Action action;
descriptor: Ljavax/swing/Action;
flags: (0x0002) ACC_PRIVATE
private static java.lang.ref.ReferenceQueue<javax.swing.JComponent> getQueue();
descriptor: ()Ljava/lang/ref/ReferenceQueue;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: ldc Ljavax/swing/ActionPropertyChangeListener;
dup
astore 0
monitorenter
1: getstatic javax.swing.ActionPropertyChangeListener.queue:Ljava/lang/ref/ReferenceQueue;
ifnonnull 3
2: new java.lang.ref.ReferenceQueue
dup
invokespecial java.lang.ref.ReferenceQueue.<init>:()V
putstatic javax.swing.ActionPropertyChangeListener.queue:Ljava/lang/ref/ReferenceQueue;
3: StackMap locals: java.lang.Class
StackMap stack:
aload 0
monitorexit
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: aload 0
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
getstatic javax.swing.ActionPropertyChangeListener.queue:Ljava/lang/ref/ReferenceQueue;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
1 4 5 any
5 6 5 any
Signature: ()Ljava/lang/ref/ReferenceQueue<Ljavax/swing/JComponent;>;
public void <init>(T, javax.swing.Action);
descriptor: (Ljavax/swing/JComponent;Ljavax/swing/Action;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokevirtual javax.swing.ActionPropertyChangeListener.setTarget:(Ljavax/swing/JComponent;)V
2: aload 0
aload 2
putfield javax.swing.ActionPropertyChangeListener.action:Ljavax/swing/Action;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
0 4 1 c TT;
0 4 2 a Ljavax/swing/Action;
Signature: (TT;Ljavax/swing/Action;)V
MethodParameters:
Name Flags
c
a
public final void propertyChange(java.beans.PropertyChangeEvent);
descriptor: (Ljava/beans/PropertyChangeEvent;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual javax.swing.ActionPropertyChangeListener.getTarget:()Ljavax/swing/JComponent;
astore 2
start local 2 1: aload 2
ifnonnull 4
2: aload 0
invokevirtual javax.swing.ActionPropertyChangeListener.getAction:()Ljavax/swing/Action;
aload 0
invokeinterface javax.swing.Action.removePropertyChangeListener:(Ljava/beans/PropertyChangeListener;)V
3: goto 5
4: StackMap locals: javax.swing.JComponent
StackMap stack:
aload 0
aload 2
aload 0
invokevirtual javax.swing.ActionPropertyChangeListener.getAction:()Ljavax/swing/Action;
aload 1
invokevirtual javax.swing.ActionPropertyChangeListener.actionPropertyChanged:(Ljavax/swing/JComponent;Ljavax/swing/Action;Ljava/beans/PropertyChangeEvent;)V
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
0 6 1 e Ljava/beans/PropertyChangeEvent;
1 6 2 target TT;
MethodParameters:
Name Flags
e
protected abstract void actionPropertyChanged(T, javax.swing.Action, java.beans.PropertyChangeEvent);
descriptor: (Ljavax/swing/JComponent;Ljavax/swing/Action;Ljava/beans/PropertyChangeEvent;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: (TT;Ljavax/swing/Action;Ljava/beans/PropertyChangeEvent;)V
MethodParameters:
Name Flags
target
action
e
private void setTarget();
descriptor: (Ljavax/swing/JComponent;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: invokestatic javax.swing.ActionPropertyChangeListener.getQueue:()Ljava/lang/ref/ReferenceQueue;
astore 2
start local 2 1: goto 6
start local 3 2: StackMap locals: java.lang.ref.ReferenceQueue javax.swing.ActionPropertyChangeListener$OwnedWeakReference
StackMap stack:
aload 3
invokevirtual javax.swing.ActionPropertyChangeListener$OwnedWeakReference.getOwner:()Ljavax/swing/ActionPropertyChangeListener;
astore 4
start local 4 3: aload 4
invokevirtual javax.swing.ActionPropertyChangeListener.getAction:()Ljavax/swing/Action;
astore 5
start local 5 4: aload 5
ifnull 6
5: aload 5
aload 4
invokeinterface javax.swing.Action.removePropertyChangeListener:(Ljava/beans/PropertyChangeListener;)V
end local 5 end local 4 end local 3 6: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.ref.ReferenceQueue.poll:()Ljava/lang/ref/Reference;
checkcast javax.swing.ActionPropertyChangeListener$OwnedWeakReference
dup
astore 3
start local 3 7: ifnonnull 2
8: aload 0
new javax.swing.ActionPropertyChangeListener$OwnedWeakReference
dup
aload 1
aload 2
aload 0
invokespecial javax.swing.ActionPropertyChangeListener$OwnedWeakReference.<init>:(Ljavax/swing/JComponent;Ljava/lang/ref/ReferenceQueue;Ljavax/swing/ActionPropertyChangeListener;)V
putfield javax.swing.ActionPropertyChangeListener.target:Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference;
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
0 10 1 c TT;
1 10 2 queue Ljava/lang/ref/ReferenceQueue<Ljavax/swing/JComponent;>;
2 6 3 r Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference<*>;
7 10 3 r Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference<*>;
3 6 4 oldPCL Ljavax/swing/ActionPropertyChangeListener<*>;
4 6 5 oldAction Ljavax/swing/Action;
Signature: (TT;)V
MethodParameters:
Name Flags
c
public T getTarget();
descriptor: ()Ljavax/swing/JComponent;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.swing.ActionPropertyChangeListener.target:Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield javax.swing.ActionPropertyChangeListener.target:Ljavax/swing/ActionPropertyChangeListener$OwnedWeakReference;
invokevirtual javax.swing.ActionPropertyChangeListener$OwnedWeakReference.get:()Ljava/lang/Object;
checkcast javax.swing.JComponent
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
Signature: ()TT;
public javax.swing.Action getAction();
descriptor: ()Ljavax/swing/Action;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.swing.ActionPropertyChangeListener.action:Ljavax/swing/Action;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
private void writeObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
1: aload 1
aload 0
invokevirtual javax.swing.ActionPropertyChangeListener.getTarget:()Ljavax/swing/JComponent;
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
0 3 1 s Ljava/io/ObjectOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
checkcast javax.swing.JComponent
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 0
aload 2
invokevirtual javax.swing.ActionPropertyChangeListener.setTarget:(Ljavax/swing/JComponent;)V
4: StackMap locals: javax.swing.JComponent
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavax/swing/ActionPropertyChangeListener<TT;>;
0 5 1 s Ljava/io/ObjectInputStream;
2 5 2 target TT;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
s
}
Signature: <T:Ljavax/swing/JComponent;>Ljava/lang/Object;Ljava/beans/PropertyChangeListener;Ljava/io/Serializable;
SourceFile: "ActionPropertyChangeListener.java"
NestMembers:
javax.swing.ActionPropertyChangeListener$OwnedWeakReference
InnerClasses:
private OwnedWeakReference = javax.swing.ActionPropertyChangeListener$OwnedWeakReference of javax.swing.ActionPropertyChangeListener