• ベストアンサー

classファイルをjavaファイルへ。

classファイルをjavaファイルへ戻すことってできるんでしょうか? もしできるのなら、やり方をお教えください。

  • Java
  • 回答数2
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • yuji
  • ベストアンサー率37% (64/169)
回答No.2

Javaの逆コンパイラを使えば、ある程度復元することは できます。

参考URL:
http://www.javacats.com/JP/articles/decompiler2.html
bajiru8
質問者

お礼

ありがとうございます。 早速、ご紹介のHPを見てみました。 まだ、詳しく見てないのですが役に立ちそうです。

その他の回答 (1)

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

基本的に無理です。 まず、ソースに書かれたコメントは、コンパイルされたファイル (.class)には 反映されません。 また、コンパイルされるときに、最適化という処置を行います。 多少(処理的に)無駄なコードを書いても、コンパイラが頑張って 実行速度が速い、または、ファイルサイズが小さい結果を吐き出そう と頑張ります。 つまり、元の情報に、コンパイラが手を加えるわけですから、 元のソースの状態に戻すことができなくなります。

bajiru8
質問者

お礼

回答、ありがとうございます。 最適化されれば、元どおりにはなりませんね。 それでも解読できる程度のソースが 見れればと思っていました。

関連するQ&A

  • javaのCLASS ファイルについて

    いらないJAVAのプログラムが増えてきたので保存してあるフォルダを整理していたところ、誤って必要なものまで削除してしまったのですがCLASS ファイルはあります。CLASSファイルからJAVAファイルに戻すことはできますか?

    • ベストアンサー
    • Java
  • java .classのファイル形式

    javaのファイルに.java .classがありますが .javaのファイル形式はテキストファイルだと思いますが .classのファイル形式は バイナリファイルでしょうか? または実行ファイルでしょうか? または別のファイル形式でしょうか?

    • ベストアンサー
    • Java
  • javaのソースとclassファイルの単位について

    最近JAVAの勉強を始めました。 基礎的なことで恐縮ですが、JAVAのコンパイル単位を知りたいのですが。 一つの*.javaファイルについては、必ず一つのclassファイルができるんでしょうか? 一つの*.javaファイルから、複数個のclassファイルができたり、複数の*.javaファイルから 一つのclassファイルができたりはしないんでしょうか? まだ、一つの*.javaから一つのclassファイルを作ったことしかないので、 申し訳ないですが、どなたか教えてください。よろしくお願いします。

    • ベストアンサー
    • Java
  • javaのclassファイルが出来ません。

    javaを独学で勉強しようと思い本を購入いたしました。 インストールしていざjavac ファイル名.javaで実行してもclassファイルが できません。何度も試してみたのですが(涙) 上記の様に実行してみたら、下記のようなエラーがでます。 エラーの内容が分かりません。 よろしくアドバイスお願い申し上げます。 Exception in thread "main"java long.NoclassDefFoundError; com/sun/tools/javac/main

    • ベストアンサー
    • Java
  • java の *$1.class ファイルについて

    最近、JDK を使っていて思ったのですが、javac でコンパイルしたときに 変わったクラスファイルがでてくるのですが・・・ たとえば、 MainFrame.class の他にMainFrame$1.class があったりします。 これがないと実行できません。 これはいったいなんなんでしょうか? どうか、教えてください。 お願いします。

    • ベストアンサー
    • Java
  • classファイル

    プログラムを書いて、コマンドプロンプト上でコンパイルとしたところエラーが表示されたのですが、.javaとかかれたソースファイルのあるフォルダに.classというファイルが出来るのはなぜですか?エラーが発生したのでコンパイルは失敗したのですが。お願いします。

    • ベストアンサー
    • Java
  • java classの呼び出し方を教えて下さい。

    java classの呼び出し方を教えて下さい。 public class test extends Applet implements Runnable,ActionListener,KeyListener{ Thread th; // スレッド宣言 AudioClip IdoSound,KaitenSound,KesiSound,SetSound,CrySound; public void init(){ }   ・   ・   ・ public void test(){ ここで、最下欄の class stream{ public static void main(String args[]){ } を実行させたいのですが、記入方法が解りません・・・ } public int kesiOne(int VP,int HP){ }    ・    ・    ・ class stream{ public static void main(String args[]){ try{ File file = new File("c:\\java\\data.txt"); if (checkBeforeWritefile(file)){ PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(file))); pw.println("12345"); pw.close(); }else{ System.out.println("ファイルに書き込めません"); } }catch(IOException e){ System.out.println(e); } } private static boolean checkBeforeWritefile(File file){ if (file.exists()){ if (file.isFile() && file.canWrite()){ return true; } } return false; } } 解りにくい書き方で申し訳け有りませんが、宜しくお願いします。

  • classファイルを元に戻す

    javaを勉強しているものなんですが、 一度コンパイルをしてできたclassファイルから もとのソースファイルを取り出す(元に戻す)ことは できるのでしょうか? なんとなく気になったもので。誰かお願いします!!!!

    • ベストアンサー
    • Java
  • CLASSというファイル

    こんちわ!いつもお世話になってます。また、疑問が発生しました。回答の方よろしくお願いいたします。JAVAのゲームサイトの配布コーナーがありDLしたところCLASSというファイルがありました。これを自分のHPに貼り付けて使用するみたいなのですが、どのように貼り付けたら良いのでしょうか?全くの初めて扱いますのでよろしくお願いいたします。

    • ベストアンサー
    • Java
  • Eclipse (3.5)で.classファイルの作成をするには?

    Eclipse (3.5)で.classファイルの作成をするには? ホームページビルダーにJavaアプレットを挿入する機能があるのですが、 ファイル形式が.classでないといけないようです。 eclipseで作成されたファイルは、.javaしか見当たらないのですが、 .classファイルを作成するにはどうしたらいいのでしょうか?

    • ベストアンサー
    • Java