public class javax.sql.rowset.serial.SerialJavaObject implements java.io.Serializable, java.lang.Cloneable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: javax.sql.rowset.serial.SerialJavaObject
super_class: java.lang.Object
{
private java.lang.Object obj;
descriptor: Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private transient java.lang.reflect.Field[] fields;
descriptor: [Ljava/lang/reflect/Field;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
static final long serialVersionUID;
descriptor: J
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: -1465795139032831023
java.util.Vector chain;
descriptor: Ljava/util/Vector;
flags: (0x0000)
public void <init>(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: aload 2
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 10
6: StackMap locals: javax.sql.rowset.serial.SerialJavaObject java.lang.Object java.lang.Class int java.lang.Class[] int
StackMap stack:
aload 4
iload 5
aaload
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 6
start local 6 7: aload 6
ldc "java.io.Serializable"
if_acmpne 9
8: iconst_1
istore 3
end local 6 9: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
aload 4
arraylength
if_icmplt 6
end local 5 11: iconst_0
istore 5
start local 5 12: aload 0
aload 2
invokevirtual java.lang.Class.getFields:()[Ljava/lang/reflect/Field;
putfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
13: iconst_0
istore 6
start local 6 14: goto 18
15: StackMap locals: javax.sql.rowset.serial.SerialJavaObject java.lang.Object java.lang.Class int java.lang.Class[] int int
StackMap stack:
aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
iload 6
aaload
invokevirtual java.lang.reflect.Field.getModifiers:()I
bipush 8
if_icmpne 17
16: iconst_1
istore 5
17: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
arraylength
if_icmplt 15
end local 6 19: iload 3
ifne 23
20: new javax.sql.rowset.RowSetWarning
dup
ldc "Test"
invokespecial javax.sql.rowset.RowSetWarning.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals: javax.sql.rowset.serial.SerialJavaObject java.lang.Object java.lang.Class int java.lang.Class[] int
StackMap stack: javax.sql.rowset.RowSetWarning
astore 6
start local 6 22: aload 0
aload 6
invokevirtual javax.sql.rowset.serial.SerialJavaObject.setWarning:(Ljavax/sql/rowset/RowSetWarning;)V
end local 6 23: StackMap locals:
StackMap stack:
iload 5
ifeq 25
24: new javax.sql.rowset.serial.SerialException
dup
ldc "Located static fields in object instance. Cannot serialize"
invokespecial javax.sql.rowset.serial.SerialException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield javax.sql.rowset.serial.SerialJavaObject.obj:Ljava/lang/Object;
26: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Ljavax/sql/rowset/serial/SerialJavaObject;
0 27 1 obj Ljava/lang/Object;
2 27 2 c Ljava/lang/Class;
3 27 3 serializableImpl Z
4 27 4 theIf [Ljava/lang/Class;
5 11 5 i I
7 9 6 ifName Ljava/lang/String;
12 27 5 anyStaticFields Z
14 19 6 i I
22 23 6 w Ljavax/sql/rowset/RowSetWarning;
Exception table:
from to target type
19 21 21 Class javax.sql.rowset.RowSetWarning
Exceptions:
throws javax.sql.rowset.serial.SerialException
MethodParameters:
Name Flags
obj
public java.lang.Object getObject();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.obj:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/sql/rowset/serial/SerialJavaObject;
Exceptions:
throws javax.sql.rowset.serial.SerialException
public java.lang.reflect.Field[] getFields();
descriptor: ()[Ljava/lang/reflect/Field;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
ifnull 3
1: aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.obj:Ljava/lang/Object;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 1
start local 1 2: aload 1
invokestatic sun.reflect.misc.FieldUtil.getFields:(Ljava/lang/Class;)[Ljava/lang/reflect/Field;
areturn
end local 1 3: StackMap locals:
StackMap stack:
new javax.sql.rowset.serial.SerialException
dup
ldc "SerialJavaObject does not contain a serialized object instance"
invokespecial javax.sql.rowset.serial.SerialException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/sql/rowset/serial/SerialJavaObject;
2 3 1 c Ljava/lang/Class;
Exceptions:
throws javax.sql.rowset.serial.SerialException
RuntimeVisibleAnnotations:
sun.reflect.CallerSensitive()
private void setWarning(javax.sql.rowset.RowSetWarning);
descriptor: (Ljavax/sql/rowset/RowSetWarning;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.chain:Ljava/util/Vector;
ifnonnull 2
1: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield javax.sql.rowset.serial.SerialJavaObject.chain:Ljava/util/Vector;
2: StackMap locals:
StackMap stack:
aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.chain:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/sql/rowset/serial/SerialJavaObject;
0 4 1 e Ljavax/sql/rowset/RowSetWarning;
MethodParameters:
Name Flags
e
}
SourceFile: "SerialJavaObject.java"