Java编译器compileClass()方法



描述

Java编译器compileClass()方法编译指定的类。

注意 − 此API自Java 9起已弃用,在Java 21及以后版本中不可用。

声明

以下是java.lang.Compiler.compileClass()方法的声明

public static boolean compileClass(Class<?> clazz)

参数

clazz − 这是一个类。

返回值

如果编译成功,此方法返回true;如果编译失败或没有可用的编译器,则返回false。

异常

NullPointerException − 如果clazz为null。

为编译器准备命令示例

以下示例显示了java.lang.Compiler.compileClass()方法的用法。在这个程序中,我们创建了两个类CompilerDemo和SubClass1。在main方法中,创建了CompilerDemo和SubClass1的实例。使用getClass()方法,我们检索了它们的类。现在使用compileClass()方法,我们编译了SubClass1类,并打印结果。

package com.tutorialspoint;

public class CompilerDemo {

   public static void main(String[] args) {

      CompilerDemo cls = new CompilerDemo();
      CompilerDemo subcls = new SubClass1();

      // class CompilerDemo
      Class c = cls.getClass(); 
      System.out.println(c);

      // sub class SubClass1
      Class c1 = subcls.getClass();
      System.out.println(c1);

      /* returns false if the compilation failed or no compiler is 
         available */
      boolean retval = Compiler.compileClass(c1);

      System.out.println("Return Value = " + retval); 
   }
} 

class SubClass1 extends CompilerDemo {
   // sub class
} 

输出

让我们编译并运行上面的程序,这将产生以下结果:

class com.tutorialspoint.CompilerDemo
class com.tutorialspoint.SubClass1
Return Value = false
java_lang_compiler.htm
广告
© . All rights reserved.