wech2010 2015-09-08 14:03 采纳率: 0%
浏览 2520

请帮忙把字节码翻译成java代码

有人能帮忙把下面的字节码翻译成对应的java代码吗,谢谢
// Byte code:
// 0: ldc 40
// 2: dup
// 3: astore_2
// 4: monitorenter
// 5: aconst_null
// 6: astore_3
// 7: aconst_null
// 8: astore 4
// 10: aconst_null
// 11: astore 5
// 13: aload_1
// 14: invokevirtual 594 com/web/framework/core/module/right/po/Department:getHigherDepartmentKey ()Ljava/lang/Integer;
// 17: ifnull +55 -> 72
// 20: aload_0
// 21: getfield 115 com/web/framework/core/module/right/service/impl/RoleRightService:departmentDAO Lcom/web/framework/core/module/right/dao/IDepartmentDAO;
// 24: aload_1
// 25: invokevirtual 594 com/web/framework/core/module/right/po/Department:getHigherDepartmentKey ()Ljava/lang/Integer;
// 28: invokeinterface 588 2 0
// 33: checkcast 584 com/web/framework/core/module/right/po/Department
// 36: astore 4
// 38: aload 4
// 40: ifnonnull +16 -> 56
// 43: new 487 java/lang/StringBuffer
// 46: dup
// 47: ldc 26
// 49: invokespecial 612 java/lang/StringBuffer: (Ljava/lang/String;)V
// 52: astore_3
// 53: goto +29 -> 82
// 56: new 487 java/lang/StringBuffer
// 59: dup
// 60: aload 4
// 62: invokevirtual 597 com/web/framework/core/module/right/po/Department:getDepartmentCode ()Ljava/lang/String;
// 65: invokespecial 612 java/lang/StringBuffer: (Ljava/lang/String;)V
// 68: astore_3
// 69: goto +13 -> 82
// 72: new 487 java/lang/StringBuffer
// 75: dup
// 76: ldc 26
// 78: invokespecial 612 java/lang/StringBuffer: (Ljava/lang/String;)V
// 81: astore_3
// 82: aload_0
// 83: aload_3
// 84: invokevirtual 498 java/lang/StringBuffer:toString ()Ljava/lang/String;
// 87: invokevirtual 613 com/web/framework/core/module/right/service/impl/RoleRightService:getSubordinateDepartmentCount (Ljava/lang/String;)Ljava/lang/Integer;
// 90: astore 5
// 92: aload 5
// 94: invokevirtual 495 java/lang/Integer:intValue ()I
// 97: ifgt +17 -> 114
// 100: aload_3
// 101: ldc 26
// 103: invokevirtual 490 java/lang/StringBuffer:append (Ljava/lang/String;)Ljava/lang/StringBuffer;
// 106: pop
// 107: aload_3
// 108: invokevirtual 498 java/lang/StringBuffer:toString ()Ljava/lang/String;
// 111: aload_2
// 112: monitorexit
// 113: areturn
// 114: aload_0
// 115: aload_3
// 116: invokevirtual 498 java/lang/StringBuffer:toString ()Ljava/lang/String;
// 119: invokespecial 617 com/web/framework/core/module/right/service/impl/RoleRightService:getMaxSubordinateDepartmentCode (Ljava/lang/String;)Ljava/lang/String;
// 122: astore 6
// 124: aload 6
// 126: ifnonnull +13 -> 139
// 129: new 155 java/lang/RuntimeException
// 132: dup
// 133: ldc 22
// 135: invokespecial 157 java/lang/RuntimeException: (Ljava/lang/String;)V
// 138: athrow
// 139: aload 6
// 141: aload 6
// 143: invokevirtual 621 java/lang/String:length ()I
// 146: getstatic 85 com/web/framework/core/module/right/service/impl/RoleRightService:DPARTMENT_CODE_LENGTH Ljava/lang/Integer;
// 149: invokevirtual 495 java/lang/Integer:intValue ()I
// 152: isub
// 153: aload 6
// 155: invokevirtual 621 java/lang/String:length ()I
// 158: invokevirtual 624 java/lang/String:substring (II)Ljava/lang/String;
// 161: astore 7
// 163: aload 7
// 165: invokestatic 628 java/lang/Integer:valueOf (Ljava/lang/String;)Ljava/lang/Integer;
// 168: invokevirtual 495 java/lang/Integer:intValue ()I
// 171: getstatic 87 com/web/framework/core/module/right/service/impl/RoleRightService:DPARTMENT_CODE_ADD_VALUE Ljava/lang/Integer;
// 174: invokevirtual 495 java/lang/Integer:intValue ()I
// 177: iadd
// 178: invokestatic 79 java/lang/Integer:valueOf (I)Ljava/lang/Integer;
// 181: astore 8
// 183: aload 8
// 185: invokestatic 548 java/lang/String:valueOf (Ljava/lang/Object;)Ljava/lang/String;
// 188: invokevirtual 621 java/lang/String:length ()I
// 191: invokestatic 79 java/lang/Integer:valueOf (I)Ljava/lang/Integer;
// 194: astore 9
// 196: aload 9
// 198: invokevirtual 495 java/lang/Integer:intValue ()I
// 201: getstatic 85 com/web/framework/core/module/right/service/impl/RoleRightService:DPARTMENT_CODE_LENGTH Ljava/lang/Integer;
// 204: invokevirtual 495 java/lang/Integer:intValue ()I
// 207: if_icmple +19 -> 226
// 210: new 155 java/lang/RuntimeException
// 213: dup
// 214: ldc 24
// 216: invokespecial 157 java/lang/RuntimeException: (Ljava/lang/String;)V
// 219: athrow
// 220: aload_3
// 221: iconst_0
// 222: invokevirtual 630 java/lang/StringBuffer:append (I)Ljava/lang/StringBuffer;
// 225: pop
// 226: aload 9
// 228: dup
// 229: invokevirtual 495 java/lang/Integer:intValue ()I
// 232: iconst_1
// 233: iadd
// 234: invokestatic 79 java/lang/Integer:valueOf (I)Ljava/lang/Integer;
// 237: astore 9
// 239: invokevirtual 495 java/lang/Integer:intValue ()I
// 242: getstatic 85 com/web/framework/core/module/right/service/impl/RoleRightService:DPARTMENT_CODE_LENGTH Ljava/lang/Integer;
// 245: invokevirtual 495 java/lang/Integer:intValue ()I
// 248: if_icmplt -28 -> 220
// 251: aload_3
// 252: aload 8
// 254: invokevirtual 633 java/lang/StringBuffer:append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
// 257: pop
// 258: aload_3
// 259: invokevirtual 498 java/lang/StringBuffer:toString ()Ljava/lang/String;
// 262: aload_2
// 263: monitorexit
// 264: areturn
// 265: aload_2
// 266: monitorexit
// 267: athrow
//
// Exception table:
// from to target type
// 5 113 265 finally
// 114 264 265 finally
// 265 267 265 finally

  • 写回答

8条回答 默认 最新

  • devmiao 2015-09-08 14:04
    关注

    代码太多了,你哪里不懂再问吧。

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题