File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Java in General and the fly likes decomplie class with inner class Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Java in General
Bookmark "decomplie class with inner class" Watch "decomplie class with inner class" New topic

decomplie class with inner class

vivi santa

Joined: Feb 02, 2001
Posts: 26
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
if(k >= CommonObject.currencyPrice.length)
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
String sCurrName;
int z;
sCurrName = null;
z = 0;
if(z >= CommonObject.branchMarket.length) goto _L4; else goto _L3
if(!CommonObject.branchMarket[z][0].equals(branch)) goto _L6; else goto _L5
if(!CommonObject.branchMarket[z][1].equals(CommonObject.currencyPrice[k][9])) goto _L6; else goto _L7
Dirk Schreckmann

Joined: Dec 10, 2001
Posts: 7023
I'm moving this to the Advanced Java forum...

[How To Ask Good Questions] [JavaRanch FAQ Wiki] [JavaRanch Radio]
Ernest Friedman-Hill
author and iconoclast

Joined: Jul 08, 2003
Posts: 24199

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.

[Jess in Action][AskingGoodQuestions]
I agree. Here's the link:
subject: decomplie class with inner class
It's not a secret anymore!