@Documented @Retention(value=RUNTIME) @Target(value={TYPE,PACKAGE}) @Exported public @interface Exported
java.* and
 javax.* packages.  For example, certain portions of com.sun.* are official parts of the JDK meant to be generally
 usable while other portions of com.sun.* are not.  This
 annotation type allows those portions to be easily and
 programmatically distinguished.
 If in one release a type or package is
 @Exported(true), in a subsequent major release such a
 type or package can transition to @Exported(false).
 
If a type or package is @Exported(false) in a
 release, it may be removed in a subsequent major release.
 
If a top-level type has an @Exported annotation,
 any nested member types with the top-level type should have an
 @Exported annotation with the same value.
 (In exceptional cases, if a nested type is going to be removed
 before its enclosing type, the nested type's could be
 @Exported(false) while its enclosing type was
 @Exported(true).)
 Likewise, if a package has an @Exported annotation,
 top-level types within that package should also have an
 @Exported annotation.
 Sometimes a top-level type may have a different
 @Exported value than its package.
| Modifier and Type | Optional Element and Description | 
|---|---|
| boolean | valueWhether or not the annotated type or package is an exported part of the JDK. | 
 Copyright © 2005, 2017, Oracle and/or its affiliates.  All rights reserved.