javap(1)                                                 javap(1)



NAME
       javap - Java class file disassembler

SYNOPSIS
       javap [ -b ] [ -bootclasspath path ] [ -c ]
            [ -classpath path ] [ -extdirs dirs ] [ -help ]
            [ -J flag ] [ -l ] [ -package ] [ -private ]
            [ -protected ] [ -public ] [ -s ] [ -verbose ]
            class ...

DESCRIPTION
       The javap command disassembles a Java(tm) class file.  The
       options determine the output.  If  no  options  are  used,
       javap prints out the package, protected, and public fields
       and methods of the classes passed to it.  The  javap  com-
       mand  displays its output to stdout.  For example, compile
       the following class declaration:

              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);
                        }
              }


       The output from javap DocFooter yields:

              Compiled from DocFooter.java
              public class DocFooter extends java.applet.Applet {
                   java.lang.String date;
                   java.lang.String email;
                   public void init();
                   public void paint(java.awt.Graphics);
                   public DocFooter();
              }


OPTIONS
       The following options are supported:

       -b             Ensures backward compatibility  with  javap
                      in JDK 1.1.

       -bootclasspathpath
                      Specifies path from which to load bootstrap
                      classes.  By default, the bootstrap classes
                      are  the classes implementing the core Java
                      platform located in ${JAVA_HOME}/../Classes
                      .

       -c             Prints  out disassembled code, that is, the
                      instructions that comprise the  Java  byte-
                      codes,  for  each  of  the  methods  in the
                      class.  These are documented  in  the  Java
                      Virtual Machine Specification.

       -classpathpath Specifies  the  path  javap uses to look up
                      classes.   Overrides  the  default  or  the
                      CLASSPATH  environment  variable  if  it is
                      set.  Directories are separated  by  colons
                      (:).  Thus the general format for path is:

                           .:<your_path>

                      For example:

                           .:/Users/vlh/classes:/Users/Shared/classes


       -extdirsdirs   Overrides  location  at   which   installed
                      extensions are searched.  The default loca-
                      tion for extensions is jre/lib/ext.

       -help          Prints out help message for javap.

       -Jflag         Passes flag directly to runtime system.

                      example% javap -J-version

                      example%  javap  -JJ-Djava.security.manager
                      .br         -Djava.security.policy=MyPolicy
                      MyClassName

       -l             Displays line and local variable tables.

       -package       Default; shows only package, protected, and
                      public classes and members.

       -private       Shows all classes and members.

       -protected     Shows only protected and public classes and
                      members.

       -public        Shows only public classes and members.

       -s             Displays internal type signatures.

       -verbose       Prints stack size, number  of  locals,  and
                      args for methods.

ENVIRONMENT VARIABLES
       CLASSPATH      Used  to  provide the system with a path to
                      user-defined classes. Directories are sepa-
                      rated by colons.  For example:

                           .:/Users/vlh/classes:/Users/Shared/classes









SEE ALSO
       java(1), javac(1), javadoc(1), javah(1), jdb(1)



                           14 July 2000                  javap(1)