Those who develop Java programs will use Java's anti-compiler to refractory categories that can't find the source code. Many times the effect is very good, but in fact, there will be hidden errors, below to use JAD Java anti-compiler DECAFE PRO as an example. (Other anti-compilation I have not tried it, interested in the same way can try) Java program: / ** * Test i * / public class test {public static void main (string [] args) {INT i = 3; i = ( i) ( i); system.out.println ("i =" i);}} The result is i = 9 Referior to Decafe Pro, the result is import java.io.printStream Public class test {public test () {}
Public static void main (string args []) {INT i = 3; i = i i; system.out.println ("i =" i);}} compiled, there is no error, it seems fine. But when you run, you will see the problem: the result is i = 7. Oh, it is very dangerous, it seems necessary to keep in mind: The anti-compilation results are for reference only. Another: It seems that sometimes you want to protect your own code, this will also put those anti-compiled people, such as i = i, write it into i = ( i) ( i) -i anti-compilation Change I = (i I) - i; forcing others to increase the cost of anti-compilation.