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 3
1: aload 0
aload 0
getfield sun.misc.LRUCache.size:I
anewarray java.lang.Object
putfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
2: goto 14
3: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 4: goto 13
5: StackMap locals: int
StackMap stack:
aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
iload 2
aaload
astore 3
start local 3 6: aload 3
ifnonnull 8
7: goto 12
8: 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 12
9: iload 2
ifle 11
10: aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
iload 2
invokestatic sun.misc.LRUCache.moveToFront:([Ljava/lang/Object;I)V
11: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 12: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
13: iload 2
aload 0
getfield sun.misc.LRUCache.oa:[Ljava/lang/Object;
arraylength
if_icmplt 5
end local 2 14: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.misc.LRUCache.create:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 15: 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
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
invokestatic sun.misc.LRUCache.moveToFront:([Ljava/lang/Object;I)V
17: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/misc/LRUCache<TN;TV;>;
0 18 1 name TN;
4 14 2 i I
6 12 3 ob TV;
15 18 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"