The tools available to the Java developer exhibit several unifying concepts,
which provide a framework to explore the next transition in Java-development
tools.
The first development tool that many Java developers use is the "javac"
compiler that is bundled with the Java Development Kit (JDK). This compiler
translates Java source code into the bytecodes that the Java Virtual Machine
(JVM) executes. The "javac" compiler is not sophisticated, but it works and
that's enough to get started.
Another tool that may be used is "java" or "jre", the runtime environments
for the JVM. The JVM interprets the bytecodes generated by the compile to
portably execute the compiled program.
At this point the developer has encountered two concepts. First, "javac" uses
the notion of static analysis and static compilation to translate the Java
language source code into the bytecodes store... (more)