Modifier (Java SE 10 & JDK 10 )
Keywords: java.lang.reflect.Modifier class

Module java.base
Package java.lang.reflect

## Class Modifier

- java.lang.Object
- - java.lang.reflect.Modifier

-     public class Modifier
      extends Object

  The Modifier class provides `static` methods and constants to decode class and member access modifiers. The sets of modifiers are represented as integers with distinct bit positions representing different modifiers. The values for the constants representing the modifiers are taken from the tables in sections 4.1, 4.4, 4.5, and 4.7 of The Java™ Virtual Machine Specification.
  Since:
    1.1
  See Also:
    `Class.getModifiers()`, `Member.getModifiers()`

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `ABSTRACT` | The `int` value representing the `abstract` modifier.
    `static int` | `FINAL` | The `int` value representing the `final` modifier.
    `static int` | `INTERFACE` | The `int` value representing the `interface` modifier.
    `static int` | `NATIVE` | The `int` value representing the `native` modifier.
    `static int` | `PRIVATE` | The `int` value representing the `private` modifier.
    `static int` | `PROTECTED` | The `int` value representing the `protected` modifier.
    `static int` | `PUBLIC` | The `int` value representing the `public` modifier.
    `static int` | `STATIC` | The `int` value representing the `static` modifier.
    `static int` | `STRICT` | The `int` value representing the `strictfp` modifier.
    `static int` | `SYNCHRONIZED` | The `int` value representing the `synchronized` modifier.
    `static int` | `TRANSIENT` | The `int` value representing the `transient` modifier.
    `static int` | `VOLATILE` | The `int` value representing the `volatile` modifier.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Modifier()` |

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static int` | `classModifiers()` | Return an `int` value OR-ing together the source language modifiers that can be applied to a class.
    `static int` | `constructorModifiers()` | Return an `int` value OR-ing together the source language modifiers that can be applied to a constructor.
    `static int` | `fieldModifiers()` | Return an `int` value OR-ing together the source language modifiers that can be applied to a field.
    `static int` | `interfaceModifiers()` | Return an `int` value OR-ing together the source language modifiers that can be applied to an interface.
    `static boolean` | `isAbstract​(int mod)` | Return `true` if the integer argument includes the `abstract` modifier, `false` otherwise.
    `static boolean` | `isFinal​(int mod)` | Return `true` if the integer argument includes the `final` modifier, `false` otherwise.
    `static boolean` | `isInterface​(int mod)` | Return `true` if the integer argument includes the `interface` modifier, `false` otherwise.
    `static boolean` | `isNative​(int mod)` | Return `true` if the integer argument includes the `native` modifier, `false` otherwise.
    `static boolean` | `isPrivate​(int mod)` | Return `true` if the integer argument includes the `private` modifier, `false` otherwise.
    `static boolean` | `isProtected​(int mod)` | Return `true` if the integer argument includes the `protected` modifier, `false` otherwise.
    `static boolean` | `isPublic​(int mod)` | Return `true` if the integer argument includes the `public` modifier, `false` otherwise.
    `static boolean` | `isStatic​(int mod)` | Return `true` if the integer argument includes the `static` modifier, `false` otherwise.
    `static boolean` | `isStrict​(int mod)` | Return `true` if the integer argument includes the `strictfp` modifier, `false` otherwise.
    `static boolean` | `isSynchronized​(int mod)` | Return `true` if the integer argument includes the `synchronized` modifier, `false` otherwise.
    `static boolean` | `isTransient​(int mod)` | Return `true` if the integer argument includes the `transient` modifier, `false` otherwise.
    `static boolean` | `isVolatile​(int mod)` | Return `true` if the integer argument includes the `volatile` modifier, `false` otherwise.
    `static int` | `methodModifiers()` | Return an `int` value OR-ing together the source language modifiers that can be applied to a method.
    `static int` | `parameterModifiers()` | Return an `int` value OR-ing together the source language modifiers that can be applied to a parameter.
    `static String` | `toString​(int mod)` | Return a string describing the access modifier flags in the specified modifier.

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

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

- - ### Field Detail

    - #### PUBLIC

          public static final int PUBLIC

      The `int` value representing the `public` modifier.
      See Also:
        Constant Field Values

    - #### PRIVATE

          public static final int PRIVATE

      The `int` value representing the `private` modifier.
      See Also:
        Constant Field Values

    - #### PROTECTED

          public static final int PROTECTED

      The `int` value representing the `protected` modifier.
      See Also:
        Constant Field Values

    - #### STATIC

          public static final int STATIC

      The `int` value representing the `static` modifier.
      See Also:
        Constant Field Values

    - #### FINAL

          public static final int FINAL

      The `int` value representing the `final` modifier.
      See Also:
        Constant Field Values

    - #### SYNCHRONIZED

          public static final int SYNCHRONIZED

      The `int` value representing the `synchronized` modifier.
      See Also:
        Constant Field Values

    - #### VOLATILE

          public static final int VOLATILE

      The `int` value representing the `volatile` modifier.
      See Also:
        Constant Field Values

    - #### TRANSIENT

          public static final int TRANSIENT

      The `int` value representing the `transient` modifier.
      See Also:
        Constant Field Values

    - #### NATIVE

          public static final int NATIVE

      The `int` value representing the `native` modifier.
      See Also:
        Constant Field Values

    - #### INTERFACE

          public static final int INTERFACE

      The `int` value representing the `interface` modifier.
      See Also:
        Constant Field Values

    - #### ABSTRACT

          public static final int ABSTRACT

      The `int` value representing the `abstract` modifier.
      See Also:
        Constant Field Values

    - #### STRICT

          public static final int STRICT

      The `int` value representing the `strictfp` modifier.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Modifier

          public Modifier()

  - ### Method Detail

    - #### isPublic

          public static boolean isPublic​(int mod)

      Return `true` if the integer argument includes the `public` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `public` modifier; `false` otherwise.

    - #### isPrivate

          public static boolean isPrivate​(int mod)

      Return `true` if the integer argument includes the `private` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `private` modifier; `false` otherwise.

    - #### isProtected

          public static boolean isProtected​(int mod)

      Return `true` if the integer argument includes the `protected` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `protected` modifier; `false` otherwise.

    - #### isStatic

          public static boolean isStatic​(int mod)

      Return `true` if the integer argument includes the `static` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `static` modifier; `false` otherwise.

    - #### isFinal

          public static boolean isFinal​(int mod)

      Return `true` if the integer argument includes the `final` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `final` modifier; `false` otherwise.

    - #### isSynchronized

          public static boolean isSynchronized​(int mod)

      Return `true` if the integer argument includes the `synchronized` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `synchronized` modifier; `false` otherwise.

    - #### isVolatile

          public static boolean isVolatile​(int mod)

      Return `true` if the integer argument includes the `volatile` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `volatile` modifier; `false` otherwise.

    - #### isTransient

          public static boolean isTransient​(int mod)

      Return `true` if the integer argument includes the `transient` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `transient` modifier; `false` otherwise.

    - #### isNative

          public static boolean isNative​(int mod)

      Return `true` if the integer argument includes the `native` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `native` modifier; `false` otherwise.

    - #### isInterface

          public static boolean isInterface​(int mod)

      Return `true` if the integer argument includes the `interface` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `interface` modifier; `false` otherwise.

    - #### isAbstract

          public static boolean isAbstract​(int mod)

      Return `true` if the integer argument includes the `abstract` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `abstract` modifier; `false` otherwise.

    - #### isStrict

          public static boolean isStrict​(int mod)

      Return `true` if the integer argument includes the `strictfp` modifier, `false` otherwise.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        `true` if `mod` includes the `strictfp` modifier; `false` otherwise.

    - #### toString

          public static String toString​(int mod)

      Return a string describing the access modifier flags in the specified modifier. For example:

      >         public final synchronized strictfp

      The modifier names are returned in an order consistent with the suggested modifier orderings given in sections 8.1.1, 8.3.1, 8.4.3, 8.8.3, and 9.1.1 of The Java™ Language Specification. The full modifier ordering used by this method is:

      > `public protected private abstract static final transient volatile synchronized native strictfp interface`

      The `interface` modifier discussed in this class is not a true modifier in the Java language and it appears after all other modifiers listed by this method. This method may return a string of modifiers that are not valid modifiers of a Java entity; in other words, no checking is done on the possible validity of the combination of modifiers represented by the input. Note that to perform such checking for a known kind of entity, such as a constructor or method, first AND the argument of `toString` with the appropriate mask from a method like `constructorModifiers()` or `methodModifiers()`.
      Parameters:
        `mod` - a set of modifiers
      Returns:
        a string representation of the set of modifiers represented by `mod`

    - #### classModifiers

          public static int classModifiers()

      Return an `int` value OR-ing together the source language modifiers that can be applied to a class.
      Returns:
        an `int` value OR-ing together the source language modifiers that can be applied to a class.
      Since:
        1.7
      See The Java™ Language Specification:
        8.1.1 Class Modifiers

    - #### interfaceModifiers

          public static int interfaceModifiers()

      Return an `int` value OR-ing together the source language modifiers that can be applied to an interface.
      Returns:
        an `int` value OR-ing together the source language modifiers that can be applied to an interface.
      Since:
        1.7
      See The Java™ Language Specification:
        9.1.1 Interface Modifiers

    - #### constructorModifiers

          public static int constructorModifiers()

      Return an `int` value OR-ing together the source language modifiers that can be applied to a constructor.
      Returns:
        an `int` value OR-ing together the source language modifiers that can be applied to a constructor.
      Since:
        1.7
      See The Java™ Language Specification:
        8.8.3 Constructor Modifiers

    - #### methodModifiers

          public static int methodModifiers()

      Return an `int` value OR-ing together the source language modifiers that can be applied to a method.
      Returns:
        an `int` value OR-ing together the source language modifiers that can be applied to a method.
      Since:
        1.7
      See The Java™ Language Specification:
        8.4.3 Method Modifiers

    - #### fieldModifiers

          public static int fieldModifiers()

      Return an `int` value OR-ing together the source language modifiers that can be applied to a field.
      Returns:
        an `int` value OR-ing together the source language modifiers that can be applied to a field.
      Since:
        1.7
      See The Java™ Language Specification:
        8.3.1 Field Modifiers

    - #### parameterModifiers

          public static int parameterModifiers()

      Return an `int` value OR-ing together the source language modifiers that can be applied to a parameter.
      Returns:
        an `int` value OR-ing together the source language modifiers that can be applied to a parameter.
      Since:
        1.8
      See The Java™ Language Specification:
        8.4.1 Formal Parameters