java.lang

## Class Compiler

- java.lang.Object
- - java.lang.Compiler

    public final class Compiler
    extends Object

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

When the Java Virtual Machine first starts, it determines if the system property `java.compiler` exists. (System properties are accessible through `System.getProperty(String)` and `System.getProperty(String, String)`. If so, it is assumed to be the name of a library (with a platform-dependent exact location and type); `System.loadLibrary(java.lang.String)` is called to load that library. If this loading succeeds, the function named `java_lang_Compiler_start()` in that library is called.

If no compiler is available, these methods do nothing.

Since:
  JDK1.0

### Method Summary

Methods
`static Object` `command(Object any)` Examines the argument type and its fields and perform some documented operation.
`static boolean` `compileClass(Class<?> clazz)` Compiles the specified class.
`static boolean` `compileClasses(String string)` Compiles all classes whose name matches the specified string.
`static void` `disable()` Cause the Compiler to cease operation.
`static void` `enable()` Cause the Compiler to resume operation.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### compileClass

    public static boolean compileClass(Class<?> clazz)

Compiles the specified class.

Parameters:
  `clazz` - A class
Returns:
  `true` if the compilation succeeded; `false` if the compilation failed or no compiler is available
Throws:
  `NullPointerException` - If `clazz` is `null`

#### compileClasses

    public static boolean compileClasses(String string)

Compiles all classes whose name matches the specified string.

Parameters:
  `string` - The name of the classes to compile
Returns:
  `true` if the compilation succeeded; `false` if the compilation failed or no compiler is available
Throws:
  `NullPointerException` - If `string` is `null`

#### command

    public static Object command(Object any)

Examines the argument type and its fields and perform some documented operation. No specific operations are required.

Parameters:
  `any` - An argument
Returns:
  A compiler-specific value, or `null` if no compiler is available
Throws:
  `NullPointerException` - If `any` is `null`

#### enable

    public static void enable()

Cause the Compiler to resume operation.

#### disable

    public static void disable()

Cause the Compiler to cease operation.

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.