Member (Java SE 23 & JDK 23)
Description: declaration: module: java.base, package: java.lang.reflect, interface: Member
Keywords: java.lang.reflect.Member interface

# Interface Member

All Known Implementing Classes:
  `Constructor`, `Executable`, `Field`, `Method`

public interface Member
Member is an interface that reflects identifying information about a single member (a field or a method) or a constructor.

Since:
  1.1
See Also:
  - `Class`
  - `Field`
  - `Method`
  - `Constructor`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `DECLARED`
  Identifies the set of declared members of a class or interface.
  `static final int`
  `PUBLIC`
  Identifies the set of all public members of a class or interface, including inherited members.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `default Set<AccessFlag>`
  `accessFlags()`
  Returns an unmodifiable set of the access flags for this member, possibly empty.
  `Class<?>`
  `getDeclaringClass()`
  Returns the Class object representing the class or interface that declares the member or constructor represented by this Member.
  `int`
  `getModifiers()`
  Returns the Java language modifiers for the member or constructor represented by this Member, as an integer.
  `String`
  `getName()`
  Returns the simple name of the underlying member or constructor represented by this Member.
  `boolean`
  `isSynthetic()`
  Returns `true` if this member was introduced by the compiler; returns `false` otherwise.

- ## Field Details

  - ### PUBLIC

    static final int PUBLIC
    Identifies the set of all public members of a class or interface, including inherited members.
    See Also:
      - Constant Field Values

  - ### DECLARED

    static final int DECLARED
    Identifies the set of declared members of a class or interface. Inherited members are not included.
    See Also:
      - Constant Field Values

- ## Method Details

  - ### getDeclaringClass

    Class<?> getDeclaringClass()
    Returns the Class object representing the class or interface that declares the member or constructor represented by this Member.
    Returns:
      an object representing the declaring class of the underlying member

  - ### getName

    String getName()
    Returns the simple name of the underlying member or constructor represented by this Member.
    Returns:
      the simple name of the underlying member

  - ### getModifiers

    int getModifiers()
    Returns the Java language modifiers for the member or constructor represented by this Member, as an integer. The Modifier class should be used to decode the modifiers in the integer.
    Returns:
      the Java language modifiers for the underlying member
    See Also:
      - `Modifier`
      - `accessFlags()`

  - ### accessFlags

    default Set<AccessFlag> accessFlags()
    Returns an unmodifiable set of the access flags for this member, possibly empty.
    Implementation Requirements:
      The default implementation throws `UnsupportedOperationException`.
    Returns:
      an unmodifiable set of the access flags for this member, possibly empty
    Since:
      20
    See Also:
      - `getModifiers()`

  - ### isSynthetic

    boolean isSynthetic()
    Returns `true` if this member was introduced by the compiler; returns `false` otherwise.
    Returns:
      true if and only if this member was introduced by the compiler.
    See Java Language Specification:
      13.1 The Form of a Binary
    Since:
      1.5