Dear Sir I am sorry to trouble you. I am a student. My problem is like this: Because I want to use a graph package from others (No source codes), unfortunately, its GraphObject.class never implements "Serializable" interface. But I want to transfer graph object between different JVMs. So, I try to decompile all its classes using jad. It works fine for all other classes. But for "isTree()" method of Net.class, jad generated some "goto" and JVM codes. So, I cannot compile these generated codes by javac. Could you help me have a look? Furthermore, I still worry one problem: Because all classes of this package is subclass of GraphObject class, I try to decompile GraphObject.class to GraphObject.java, then add "implements Serializable" to this GraphObject.java. Next, I decompile all its classes files to .java files. The last step is to compile these .java files to .class files (include GraphObject.java). Do you think this method is correct? I am not sure how java compiler does when it compile .java files if they have inherentance relationship. Thanks very much! yangyuexiang
public boolean isTree() { boolean flag; String s; Enumeration enumeration; flag = true; if(this instanceof Tree) return true; s = defUniqueSystemKey(null, false); enumeration = enumerateVertices(); goto _L1 _L4: Vertex vertex = (Vertex)enumeration.nextElement(); goto _L2 JVM INSTR pop ; continue; /* Loop/switch isn't completed */ _L2: if(vertex.systemdict.getBoolean(s) || _isTreeBranch(vertex, s)) continue; /* Loop/switch isn't completed */ flag = false; break; /* Loop/switch isn't completed */ _L1: if(enumeration.hasMoreElements()) goto _L4; else goto _L3 _L3: undefSystemKey(s); return flag; }