Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

decomplie class with inner class

 
vivi santa
Greenhorn
Posts: 26
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
anyone could suggest how to decomplie a class file with inner class?
I am using the DJ Java Decompiler and when i decomplie it, I see there's something like line no. added to the beginning of the line and some goto statement( I suppose it is not in the origional file). Anyone can suggest how to elimiate them? As the origional source file is missing. I'm not able to know when inside those label....
Pls. help
thanks in advance
-------------------
_L10:
PushClientAcceptor.this;
if(k >= CommonObject.currencyPrice.length)
break MISSING_BLOCK_LABEL_900;
if(sharedObj.logLevel == 5)
logInfo(String.valueOf("k = " + k + "-" + sharedObj.getBranchBidAsk(String.valueOf(branch).concat(PushClientAcceptor.this.valueOf(CommonObject.currencyPrice[k][0]))) + " branch + sharedObj.currencyPrice[k][0]: '" + branch).concat(PushClientAcceptor.this.valueOf(CommonObject.currencyPrice[k][0])) + "'");
if(sharedObj.getBranchBidAsk(String.valueOf(branch).concat(PushClientAcceptor.this.valueOf(CommonObject.currencyPrice[k][0]))) == null) goto _L2; else goto _L1
_L1:
String sCurrName;
int z;
sCurrName = null;
z = 0;
_L8:
PushClientAcceptor.this;
if(z >= CommonObject.branchMarket.length) goto _L4; else goto _L3
_L3:
PushClientAcceptor.this;
if(!CommonObject.branchMarket[z][0].equals(branch)) goto _L6; else goto _L5
_L5:
PushClientAcceptor.this;
PushClientAcceptor.this;
if(!CommonObject.branchMarket[z][1].equals(CommonObject.currencyPrice[k][9])) goto _L6; else goto _L7
_L7:
PushClientAcceptor.this;
----------------------
 
Dirk Schreckmann
Sheriff
Posts: 7023
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'm moving this to the Advanced Java forum...
 
Ernest Friedman-Hill
author and iconoclast
Marshal
Pie
Posts: 24208
35
Chrome Eclipse IDE Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Decompilers will emit code like this if they can't figure out how to decompile the bytecode. This can happen if the original class has been "obfuscated" -- deliberately fiddled with to make normal bytecode flows hard to recognize. It can also happen if the compiler used to compile the file wasn't one of the common ones like javac itself or Jikes.
My advice would be to try a different decompiler for this file, and maybe you'll get lucky. The one you're using is just a front end to Jad, which is actually the best decompiler I've used, so I'm afraid I don't have any specific suggestions; but Googling should surely turn something up.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic