Java コードへのデコンパイル

前回の記事「Kotlin 版 Hello, world」では、 IntelliJ の Kotlin (JVM) プロジェクトで、簡単な Hello world プログラムを作りました。 そして、さらに Kotlin の REPL で対話的にコードが実行できることもみました。

ここでは、同じ Kotlin の Hello world プログラムから、Java の Hello world が作れることをみてみましょう。

Kotlin コンパイラは JVM 向けの Java バイトコードを生成するので、その生成されたバイトコードからさかのぼり、 Java のコードが生成できるのです。

Kotlin はかなり現代的です。理解するには Java のような伝統的なコードを見るが役に立つことがあります。「へ〜、Java になるんだ〜」という小ネタだけでなく、 実質的にも役に立つことがありますので、知っていて損はありません。

Kotlin のプログラムのビルドに成功したら、Tool メニューから KotlinShow Kotlin Bytecode を選択します。

Kotlin Bytecode ウィンドウが表示されます。

ぱっと見るだけでは何をやっているかわかりにくいですが、Kotlin のコードにカーソルを合わせると、 それに対応するバイトコードがハイライトされますので、バイトコードで書き下した時に何をしているかある程度わかると思います。

Kotlin Bytecode ウィンドウの上部にある Decompile ボタンをクリックすると、 バイトコードから Java のコードにデコンパイルされてエディターウィンドウに表示されます。

以上で IntelliJ の Kotlin バイトコード表示と、そのデコンパイルによって Java コードを表示しました。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Kotlin 入門