public abstract class sun.misc.LRUCache<N, V>
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.misc.LRUCache
super_class: java.lang.Object
{
private V[] oa;
descriptor: [Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Signature: [TV;
private final int size;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aconst_null
putfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
2: aload 0
iload 1
putfield sun.misc.LRUCache.size:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/misc/LRUCache<TN;TV;>;
0 4 1 size I
MethodParameters:
Name Flags
size
protected abstract V create();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: (TN;)TV;
MethodParameters:
Name Flags
name
protected abstract boolean hasName(V, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: (TV;TN;)Z
MethodParameters:
Name Flags
ob
name
public static void moveToFront(java.lang.Object[], int);
descriptor: ([Ljava/lang/Object;I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iload 1
aaload
astore 2
start local 2 1: iload 1
istore 3
start local 3 2: goto 5
3: StackMap locals: java.lang.Object int
StackMap stack:
aload 0
iload 3
aload 0
iload 3
iconst_1
isub
aaload
aastore
4: iinc 3 -1
StackMap locals:
StackMap stack:
5: iload 3
ifgt 3
end local 3 6: aload 0
iconst_0
aload 2
aastore
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 oa [Ljava/lang/Object;
0 8 1 i I
1 8 2 ob Ljava/lang/Object;
2 6 3 j I
MethodParameters:
Name Flags
oa
i
public V forName();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
ifnonnull 4
1: aload 0
getfield sun.misc.LRUCache.size:I
anewarray java.lang.Object
astore 2
start local 2 2: aload 0
aload 2
putfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
end local 2 3: goto 15
4: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 5: goto 14
6: StackMap locals: int
StackMap stack:
aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
iload 2
aaload
astore 3
start local 3 7: aload 3
ifnonnull 9
8: goto 13
9: StackMap locals: java.lang.Object
StackMap stack:
aload 0
aload 3
aload 1
invokevirtual sun.misc.LRUCache.hasName:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 13
10: iload 2
ifle 12
11: aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
iload 2
invokestatic sun.misc.LRUCache.moveToFront:([Ljava/lang/Object;I)V
12: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 13: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
14: iload 2
aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
arraylength
if_icmplt 6
end local 2 15: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.misc.LRUCache.create:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 16: aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
arraylength
iconst_1
isub
aload 2
aastore
17: aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
arraylength
iconst_1
isub
invokestatic sun.misc.LRUCache.moveToFront:([Ljava/lang/Object;I)V
18: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/misc/LRUCache<TN;TV;>;
0 19 1 name TN;
2 3 2 temp [Ljava/lang/Object;
5 15 2 i I
7 13 3 ob TV;
16 19 2 ob TV;
Signature: (TN;)TV;
MethodParameters:
Name Flags
name
}
Signature: <N:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "LRUCache.java"