CLASS JAVA
ファイル変換

CLASS から JAVA への変換

クイック回答
CLASS を JAVA に変換することは可能ですか?
はい - CLASS は JAVA に変換可能です。

.class ファイルを JD-GUI にドラッグして再構築された Java ソースを表示・保存するか、java -jar cfr.jar MyClass.class --outputdir ./out を実行します。出力は近似的なものです。コメントは復元できず、デバッグ情報付きでコンパイルされていない限り、ローカル変数名は通常生成された名前に置き換えられます。

JAVA への他の変換: JWS · SMALI · VDM

このページの内容

macOS、Windows、Linux でテスト済み
最終検証日:Oct 2026

その他の無料コンバーター

HEIC、PNG、WEBP、MP3 など、すべてのツールが無料です。

ツールボックスを開く

なぜ CLASS を JAVA に変換するのですか?

.class ファイルにはソースコードではなく、コンパイルされたバイトコードが格納されています。デコンパイルは、元の .java ファイルが紛失または利用不能な場合、サードパーティのコードを監査する場合、またはコンパイルされたクラスの動作を理解する場合に役立ちます。デコンパイラは、元の Java ソースの近似値をリバースエンジニアリングします。

CLASS から JAVA への変換方法

JD-GUI OPEN-SOURCE

JD-GUI ウィンドウに .class ファイルをドラッグすると、再構築されたソースがすぐに表示されます。「File」 > 「Save All Sources」を使用して .java ファイルをエクスポートします。

CFR OPEN-SOURCE

java -jar cfr.jar MyClass.class --outputdir ./out を実行すると、出力フォルダにデコンパイルされた .java ファイルが生成されます。

IntelliJ IDEA Community FREE

.class ファイルをエディタで開くかドラッグします。IntelliJ は内蔵の Fernflower エンジンを使用して自動的にデコンパイルし、ソースを表示します。

これらの形式について

品質と注意点

  • 元のソース内のコメントはコンパイラによって削除されるため、バイトコードから復元することはできません。
  • デバッグ情報(javac -g)付きでコンパイルされていない限り、元のローカル変数名は通常 var1、var2 などの生成された名前に置き換えられます。
  • 難読化されたクラス(ProGuard や R8 で処理されたもの)をデコンパイルすると、ほとんど読めないコードになります。デコンパイラ自体は動作しますが、出力には難読化された名前が反映されます。

よくある質問

デコンパイルされた Java ソースは再コンパイル可能ですか?
単純なクラスであれば通常は可能ですが、複雑なラムダ式や高度にインライン化されたコードの場合、正常にコンパイルするために手動での修正が必要になることがあります。
どの Java バージョンでコンパイルされたクラスかを知るには?
.class ヘッダーのメジャーバージョンが Java のリリースを示します。例えば、52 = Java 8、61 = Java 17、65 = Java 21 です。
Java ソースの復元ではなく、バイトコードを確認したいだけの場合は?
JDK に付属している javap -c -p MyClass を使用すれば、別途ダウンロードすることなくバイトコードをニーモニックに逆アセンブルできます。