Java编译器compileClasses()方法



描述

Java编译器compileClasses()方法编译所有名称与指定字符串匹配的类。

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

声明

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

public static boolean compileClasses(String string)

参数

string − 这是要编译的类的名称。

返回值

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

异常

NullPointerException − 如果string为null。

为编译器准备命令示例

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

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 */
      String str = "CompilerDemo";
      boolean retval = Compiler.compileClasses(str);

      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
广告