Module java.compiler
Package javax.lang.model.element

## Enum Modifier

- java.lang.Object
- - java.lang.Enum<Modifier>
  - - javax.lang.model.element.Modifier

- All Implemented Interfaces:
    `Serializable`, `Comparable<Modifier>`, `Constable`

      public enum Modifier
      extends Enum<Modifier>

  Represents a modifier on a program element such as a class, method, or field.

  Not all modifiers are applicable to all kinds of elements. When two or more modifiers appear in the source code of an element then it is customary, though not required, that they appear in the same order as the constants listed in the detail section below.

  Note that it is possible additional modifiers will be added in future versions of the platform.

  Since:
    1.6

- - ### Nested Class Summary

    - ### Nested classes/interfaces declared in class java.lang.Enum

      `Enum.EnumDesc<E extends Enum<E>>`

  - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `ABSTRACT` | The modifier `abstract`
    `DEFAULT` | The modifier `default`
    `FINAL` | The modifier `final`
    `NATIVE` | The modifier `native`
    `PRIVATE` | The modifier `private`
    `PROTECTED` | The modifier `protected`
    `PUBLIC` | The modifier `public`
    `STATIC` | The modifier `static`
    `STRICTFP` | The modifier `strictfp`
    `SYNCHRONIZED` | The modifier `synchronized`
    `TRANSIENT` | The modifier `transient`
    `VOLATILE` | The modifier `volatile`

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `String` | `toString()` | Returns this modifier's name in lowercase.
    `static Modifier` | `valueOf​(String name)` | Returns the enum constant of this type with the specified name.
    `static Modifier[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods declared in class java.lang.Enum

      `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf`

    - ### Methods declared in class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### PUBLIC

          public static final Modifier PUBLIC

      The modifier `public`

    - #### PROTECTED

          public static final Modifier PROTECTED

      The modifier `protected`

    - #### PRIVATE

          public static final Modifier PRIVATE

      The modifier `private`

    - #### ABSTRACT

          public static final Modifier ABSTRACT

      The modifier `abstract`

    - #### DEFAULT

          public static final Modifier DEFAULT

      The modifier `default`
      Since:
        1.8

    - #### STATIC

          public static final Modifier STATIC

      The modifier `static`

    - #### FINAL

          public static final Modifier FINAL

      The modifier `final`

    - #### TRANSIENT

          public static final Modifier TRANSIENT

      The modifier `transient`

    - #### VOLATILE

          public static final Modifier VOLATILE

      The modifier `volatile`

    - #### SYNCHRONIZED

          public static final Modifier SYNCHRONIZED

      The modifier `synchronized`

    - #### NATIVE

          public static final Modifier NATIVE

      The modifier `native`

    - #### STRICTFP

          public static final Modifier STRICTFP

      The modifier `strictfp`

  - ### Method Detail

    - #### values

          public static Modifier[] values()

      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static Modifier valueOf​(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

    - #### toString

          public String toString()

      Returns this modifier's name in lowercase.
      Overrides:
        `toString` in class `Enum<Modifier>`
      Returns:
        the name of this enum constant