Java Compiler Class



Introduction

The Java Compiler class is provided to support Java-to-native-code compilers and related services. By design, it serves as a placeholder for a JIT compiler implementation.

Note − This API is deprecated since Java 9 and is not available Java 21 onwards.

Class Declaration

Following is the declaration for java.lang.Compiler class −

public final class Compiler
   extends Object

Class methods

Methods inherited

This class inherits methods from the following classes −

  • java.lang.Object

Enabling a Compiler Example

The following example shows the usage of java.lang.Compiler.enable() method. In this program, we've enabled the compiler using enable() method. Then prepare a compile command using command() method. Then we've retrieved hashcode of a new Integer object created and printed the same.

package com.tutorialspoint;

public class CompilerDemo {

   public static void main(String[] args) {

      // checking if compiler is enabled or not        
      Compiler.enable();
      System.out.println("Compiler Enabled...");                          
      Compiler.command("{java.lang.Integer.*}(compile)");

      Integer i = new Integer("50");
    
      // returns a hash code value
      int retval = i.hashCode();
      System.out.println("Value = " + retval); 
   }
} 

Output

Let us compile and run the above program, this will produce the following result −

Compiler Enabled...
Value = 50