クラスファイルを逆アセンブルします。
javap [ options ] class. . .
javap コマンドは、クラスファイルを逆アセンブルします。 その出力は指定するオプションにより異なります。 オプションを指定しない場合、javap は、そのパッケージ、渡されたクラスの protected および public のフィールドとメソッドを出力します。 javap はその出力を標準出力に表示します。 たとえば、次のクラス宣言をコンパイルするとします。import Java.awt.*; import java.applet.*; public class DocFooter extends Applet { String date; String email; public void init() { resize(500,100); date = getParameter("LAST_UPDATED"); email = getParameter("EMAIL"); } public void paint(Graphics g) { g.drawString(date + " by ",100, 15); g.drawString(email,290,15); } }javap DocFooter がもたらす出力は次のようになります。javap -c DocFooter がもたらす出力は次のようになります。Compiled from DocFooter.java public class DocFooter extends java.applet.Applet { java.lang.String date; java.lang.String email; public DocFooter(); public void init(); public void paint(java.awt.Graphics); }Compiled from DocFooter.java public class DocFooter extends java.applet.Applet { java.lang.String date; java.lang.String email; public DocFooter(); public void init(); public void paint(java.awt.Graphics); } Method DocFooter() 0 aload_0 1 invokespecial #14 return Method void init() 0 aload_0 1 sipush 500 4 bipush 100 6 invokevirtual #2 9 aload_0 10 aload_0 11 ldc #3 13 invokevirtual #4 16 putfield #5 19 aload_0 20 aload_0 21 ldc #6 23 invokevirtual #4 26 putfield #7 29 return Method void paint(java.awt.Graphics) 0 aload_1 1 new #8 4 dup 5 invokespecial #9 8 aload_0 9 getfield #5 12 invokevirtual #10 15 ldc #11 17 invokevirtual #10 20 invokevirtual #12 23 bipush 100 25 bipush 15 27 invokevirtual #13 30 aload_1 31 aload_0 32 getfield #7 35 sipush 290 38 bipush 15 40 invokevirtual #13 43 return オプション
- -help
 - javap のヘルプメッセージを出力します。
 
- -l
 - 行番号と局所変数テーブルを表示します。
 
- -b
 - JDK 1.1 の javap との下位互換性を保証します。
 
- -public
 - public クラスおよびメンバだけを表示します。
 
- -protected
 - protected および public のクラスとメンバだけを表示します。
 
- -package
 - package、protected、および public のクラスとメンバだけを表示します。 これはデフォルトの設定です。
 
- -private
 - すべてのクラスとメンバを表示します。
 
- -Jflag
 - ランタイムシステムに直接 flag を渡します。 使用例を次に示します。
 javap -J-version javap -J-Djava.security.manager -J-Djava.security.policy=MyPolicy MyClassName
- -s
 - 内部の型シグニチャーを出力します。
 
- -c
 - クラスの各メソッドのために逆アセンブルされるコード、すなわち Java バイトコードから成る命令を表示します。 これらは「Java 仮想マシン仕様」にドキュメント化されています。
 
- -verbose
 - メソッドのスタックサイズ、および
 localsとargsの数を出力します。
- -classpath path
 - javap がクラスを探すために使用するパスを指定します。 デフォルトまたは CLASSPATH 環境変数設定を上書きします。 ディレクトリはセミコロンで分割します。 したがって、path の一般形式は次のようになります。
 
.;<your_path>例:.;C:¥usrs¥dac¥classes;C:¥tools¥java¥classes- -bootclasspath path
 - ブートストラップクラスをロードするパスを指定します。 ブートストラップクラスは、デフォルトでは jre¥lib¥rt.jar および jre¥lib¥i18n.jar にある、コア Java プラットフォームを実装するクラスです。
 
- -extdirs dirs
 - インストールされた拡張機能を検索する場所をオーバーライドします。 拡張機能は、デフォルトでは jre¥lib¥ext にあります。
 
環境変数
- CLASSPATH
 - ユーザ定義クラスへのパスをシステムに指定します。 ディレクトリはセミコロンで分割します。 次に例を示します。
 .;C:¥usrs¥dac¥classes;C:¥tools¥java¥classes関連項目
javac、java、jdb、javah
| 
 Copyright © 2002 Sun Microsystems, Inc. All Rights Reserved.  | 
  Java ソフトウェア  |