Java compiler that is supplied as part of Sun’s SDK.The javac compiler is written entirely in Java, so it’s available for any platform that supports the Java runtime system. The ability to support its own development environments is an important stage in a language’s development.Java source code into a compiled class that contains Java virtual machine byte-code.The name of the source files is .java extension; result of the class files is .class extension.
Java Compiler is the most fundamental tools in Java language.that's way programmers can use during programming.A bytecode is a binary code that is understood and interpreted by Java Virtual Machine (JVM). It is not similar to machine code.Java Virtual Machine interprets the bytecode by loading the class file to machine Language.
javac checks only source files that are referenced directly from other source files. that means if you have an out-of-date class file that is referenced only by an up-to-date class file, it may not be noticed and recompiled. You can force javac to walk the entire graph of objects using the -depend option. But be warned, this can increase compilation time significantly. And this technique still won’t help if you want to keep class libraries or other collections of classes up to date even if they aren’t being referenced at all. For that you should consider a make utility.