title: Java Reverse Engineering Tutorial
body: <p>I am interested in how the reverse-engineering on java bytecode is conducted. Can anyone recommend some useful tutorials for me?</p>
  
  <p>I have read some articles on this topic already:
  1. <a href="http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html" rel="nofollow">The class File Format</a>
  2. <a href="http://www.ibm.com/developerworks/ibm/library/it-haggar_bytecode/" rel="nofollow">Java bytecode</a></p>
  
  <p>These two articles gave a lot of information about bytecode. However, non of them actually talks about the way to reverse engineer it, like how a snap of code is able to be mapped back to an if condition block or a for loop.</p>
  
  <p>Thanks</p>