ntVar = 10 0 bipush 10 2 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticIntVar : int [22] // staticComputeIntVar = (int)(Math.random() * 10) 5 invokestatic java.lang.Math.random() : double [24] 8 ldc2_w [30] 11 dmul 12 d2i 13 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticComputeIntVar : int [32] //staticStrVar = “Static field init(before)” 16 ldc [34] 18 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticStrVar : java.lang.String [36] //staticRefVar = new Object(); 21 new java.lang.Object [3] 24 dup 25 invokespecial java.lang.Object() [38] 28 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticRefVar : java.lang.Object [41] //staticIntVar = 20 31 bipush 20 33 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticIntVar : int [22] //staticStrVar = “Static block init(before)” 36 ldc [43] 38 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticStrVar : java.lang.String [36] //staticAfterIntVar = 40 41 bipush 40 43 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticAfterIntVar : int [45] //staticAfterStr = “Statci block init(after)” 46 ldc [47] 48 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticAfterStrVar : java.lang.String [49] //staticAfterIntVar = 30 51 bipush 30 53 putstatic org.levin.insidejvm.miscs.staticinit.StaticInitSequence.staticAfterIntVar : int [45] //staticAfterStrVar = “Static field init(after)” 56 ldc [51] 58 putstatic org.levin.insidejvm.
|