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 final java.lang.Object obj;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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=4, locals=5, 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: aload 1
instanceof java.io.Serializable
ifne 4
3: aload 0
new javax.sql.rowset.RowSetWarning
dup
ldc "Warning, the object passed to the constructor does not implement Serializable"
invokespecial javax.sql.rowset.RowSetWarning.<init>:(Ljava/lang/String;)V
invokevirtual javax.sql.rowset.serial.SerialJavaObject.setWarning:(Ljavax/sql/rowset/RowSetWarning;)V
4: StackMap locals: javax.sql.rowset.serial.SerialJavaObject java.lang.Object java.lang.Class
StackMap stack:
iconst_0
istore 3
start local 3 5: aload 0
aload 2
invokevirtual java.lang.Class.getFields:()[Ljava/lang/reflect/Field;
putfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
6: iconst_0
istore 4
start local 4 7: goto 11
8: StackMap locals: int int
StackMap stack:
aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
iload 4
aaload
invokevirtual java.lang.reflect.Field.getModifiers:()I
bipush 8
if_icmpne 10
9: iconst_1
istore 3
10: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
arraylength
if_icmplt 8
end local 4 12: iload 3
ifeq 14
13: 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
14: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield javax.sql.rowset.serial.SerialJavaObject.obj:Ljava/lang/Object;
15: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljavax/sql/rowset/serial/SerialJavaObject;
0 16 1 obj Ljava/lang/Object;
2 16 2 c Ljava/lang/Class<*>;
5 16 3 anyStaticFields Z
7 12 4 i I
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=4, args_size=1
start local 0 0: aload 0
getfield javax.sql.rowset.serial.SerialJavaObject.fields:[Ljava/lang/reflect/Field;
ifnull 11
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: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 2
start local 2 3: aload 2
ifnull 10
4: invokestatic sun.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
astore 3
start local 3 5: aload 3
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
6: aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
7: invokestatic sun.reflect.misc.ReflectUtil.needsPackageAccessCheck:(Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Z
8: ifeq 10
9: aload 1
invokestatic sun.reflect.misc.ReflectUtil.checkPackageAccess:(Ljava/lang/Class;)V
end local 3 10: StackMap locals: java.lang.Class java.lang.SecurityManager
StackMap stack:
aload 1
invokevirtual java.lang.Class.getFields:()[Ljava/lang/reflect/Field;
areturn
end local 2 end local 1 11: 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 12 0 this Ljavax/sql/rowset/serial/SerialJavaObject;
2 11 1 c Ljava/lang/Class<*>;
3 11 2 sm Ljava/lang/SecurityManager;
5 10 3 caller 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"