どのjavap -cはクラスファイルにしますか?
質問
実際には、質問は少し幅です。 javacがJavaファイルをByteCode、クラスファイルにコンパイルすることを知っています。そのため、クラスファイルにはJVMの命令が含まれている必要があります。一方、これらの命令を確認する唯一の方法は、クラスファイルをjavap -cで偏置することです。しかし、それは分解されていません、正しいですか?それが分解された場合は、Javaファイルを生成します。そのため、Javacは2回(実際には真実ではないが、簡単にするために)、次にByteCodeからJVM -Cへのjavap命令からJavap -cへのjavap -cをjavaファイルにコンパイルすることです。JVMはバイトコードを理解することになっているため、指示がわかりません。私はここで少し混乱しています。誰かがここで何が起こっているのかを説明できましたか?
解決
javapは decompile ではありません disassembles 違いを説明するために、私たちはその他の方法を回転させることができます。
他のヒント
javap
は、人間の読みやすい形式のJVM命令を表示します。JVM命令はJVMのコードです。javap
が示すものはアセンブラ言語です。
バイトコードをより読みやすい形式で確認したい場合は、Java Decompilerを使用してください。 jad 。Eclipseのプラグインを含むJAD用のいくつかのUIラッパーがあります。
所属していません StackOverflow