Java中的编译器类
Compiler Class为Java代码到 Native Code 提供支持和相关服务。本机代码是一种可以说是在虚拟机(例如,[JVM] Java虚拟机)中运行的代码形式。
宣言:
public final class Compiler extends Object
Java编译器类的方法
1. 命令()
Java.lang.Compiler.command()测试参数类型并执行一些记录操作。
句法:
public static boolean command(Object argument)
参数:
- 参数:需要特定于编译器。
返回:它返回编译器特定的值。
异常:它抛出 NullPointerException。
2. 编译类()
Java.lang.Compiler.compileClass()编译指定的类。
句法:
public static boolean compileClass(Class c)
参数:
- c:要编译的类。
返回:如果编译成功则返回true。否则,假的。
异常:它抛出 NullPointerException。
3.启用()
Java.lang.Compiler.enable()导致编译器开始运行。
句法 :
public static void enable()
返回:它什么也不返回。
4.禁用()
Java.lang.Compiler.disable()停止编译器执行操作。
句法 :
public static void disable()
返回:它什么也不返回。
5. 编译类()
Java.lang.Compiler.compileClasses()编译名称为字符串的类——“str”。
句法:
public static boolean compileClasses(String string)
参数:
- str:要编译的类的名称。
返回:如果类编译成功返回true。
异常:它抛出 NullPointerException。
例子:
Java
// Java Program illustrating the use
// of Compiler class Methods.
import java.lang.*;
public class NewClass {
public static void main(String[] args)
{
CompilerClass geek = new CompilerClass();
// Use of enable() :
Compiler.enable();
// class CompilerDemo
Class c = geek.getClass();
System.out.println(c);
// Use of command() :
Object g = Compiler.command("javac CompilerClass");
System.out.println("Value : " + g);
// Use of compileClass :
// Since it is not a subclass so there is no
// compiler for it
boolean check = Compiler.compileClass(c);
System.out.println(
"\nIs compilation successful ? : " + check);
String str = "CompilerClass";
boolean check1 = Compiler.compileClasses(str);
System.out.println(
"\nIs compilation successful using str ? : "
+ check1);
// Use of disable() :
Compiler.disable();
}
private static class CompilerClass {
public CompilerClass() {}
}
}
输出:
class NewClass$CompilerClass
Value : null
Is compilation successful ? : false
Is compilation successful using str ? : false
Note: The Compiler Class in Java inherits others methods from the Object class in Java.