Following example uses the JavaCompiler interface in Java 6 to programmatically compile a Java class:
public class CompilerExample {
    public static void main(String[] args) {
        String fileToCompile = "test.java"
        javax.tools.JavaCompiler compiler = javax.tools.ToolProvider.getSystemJavaCompiler();
        int compilationResult = compiler.run(null, null, null, fileToCompile);
        if (compilationResult == 0) {
            System.out.println("Compilation is successful");
        } else {
            System.out.println("Compilation Failed");
        }
    }
}