编译器类compileClass()方法compileClass()方法在java.lang包中可用。
compileClass()方法用于编译给定的类。
compileClass()方法是一个静态方法,可以使用类名进行访问,如果尝试使用类对象访问该方法,则不会出现任何错误。
在编译给定类时,compileClass()方法可能会引发异常。
NullPointerException:当给定的Class参数为null时,可能引发此异常。
语法:public static boolean compileClass(Class cl_name);
参数:类cl_name –表示类的名称。
返回值:
此方法的返回类型为String,它根据给定的情况返回以下值,给定类成功编译后,它返回true。
当给定的类失败或不存在编译器时,它返回false。
示例//Java程序演示示例
//编译器的boolean compileClass(Class cl_name)方法的说明
public class Parent {
public static void main(String args[]) {
//创建父子类对象
Parent p1 = new Parent();
Parent p2 = new Child();
//通过使用getClass()方法是获取一个Parent类
Class cl1 = p1.getClass();
System.out.println("p1.getClass() = " + cl1);
//通过使用getClass()方法是获取一个Child类
Class cl2 = p2.getClass();
System.out.println("p2.getClass() = " + cl2);
//通过使用compileClass(Class cl)方法是编译Parent class-
//如果返回则返回布尔值,然后编译给定的类
//成功,否则编译失败或不存在编译器
boolean status = Compiler.compileClass(cl1);
System.out.println("Compiler.compileClass(cl1) = " + status);
}
}
class Child extends Parent {
public void show() {
System.out.println("We are in Child class: ");
}
}
输出结果p1.getClass() = class Parent
p2.getClass() = class Child
Compiler.compileClass(cl1) = false