compact3
javax.lang.model.element

## Interface PackageElement

- All Superinterfaces:
    AnnotatedConstruct, Element, QualifiedNameable

      public interface PackageElement
      extends Element, QualifiedNameable

  Represents a package program element. Provides access to information about the package and its members.
  Since:
    1.6
  See Also:
    `Elements.getPackageOf(javax.lang.model.element.Element)`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<? extends Element>` | `getEnclosedElements()` | Returns the top-level classes and interfaces within this package.
    `Element` | `getEnclosingElement()` | Returns `null` since a package is not enclosed by another element.
    `Name` | `getQualifiedName()` | Returns the fully qualified name of this package.
    `Name` | `getSimpleName()` | Returns the simple name of this package.
    `boolean` | `isUnnamed()` | Returns `true` is this is an unnamed package and `false` otherwise.

    - ### Methods inherited from interface javax.lang.model.element.Element

      `accept, asType, equals, getAnnotation, getAnnotationMirrors, getKind, getModifiers, hashCode`

    - ### Methods inherited from interface javax.lang.model.AnnotatedConstruct

      `getAnnotationsByType`

- - ### Method Detail

    - #### getQualifiedName

          Name getQualifiedName()

      Returns the fully qualified name of this package. This is also known as the package's canonical name.
      Specified by:
        `getQualifiedName` in interface `QualifiedNameable`
      Returns:
        the fully qualified name of this package, or an empty name if this is an unnamed package
      See The Java™ Language Specification:
        6.7 Fully Qualified Names and Canonical Names

    - #### getSimpleName

          Name getSimpleName()

      Returns the simple name of this package. For an unnamed package, an empty name is returned.
      Specified by:
        `getSimpleName` in interface `Element`
      Returns:
        the simple name of this package or an empty name if this is an unnamed package
      See Also:
        `getSimpleName()`, `ExecutableElement.getSimpleName()`, `TypeElement.getSimpleName()`, `VariableElement.getSimpleName()`

    - #### getEnclosedElements

          List<? extends Element> getEnclosedElements()

      Returns the top-level classes and interfaces within this package. Note that subpackages are not considered to be enclosed by a package.
      Specified by:
        `getEnclosedElements` in interface `Element`
      Returns:
        the top-level classes and interfaces within this package
      See Also:
        `getEnclosedElements()`, `TypeElement.getEnclosedElements()`, `Elements.getAllMembers(javax.lang.model.element.TypeElement)`

    - #### isUnnamed

          boolean isUnnamed()

      Returns `true` is this is an unnamed package and `false` otherwise.
      Returns:
        `true` is this is an unnamed package and `false` otherwise
      See The Java™ Language Specification:
        7.4.2 Unnamed Packages

    - #### getEnclosingElement

          Element getEnclosingElement()

      Returns `null` since a package is not enclosed by another element.
      Specified by:
        `getEnclosingElement` in interface `Element`
      Returns:
        `null`
      See Also:
        `Elements.getPackageOf(javax.lang.model.element.Element)`

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.