105 * @implNote
106 * The <a href="ClassLoader.html#builtinLoaders">builtin class loaders</a>
107 * do not explicitly define {@code Package} objects for packages in
108 * <em>named modules</em>. Instead those packages are automatically defined
109 * and have no specification and implementation versioning information.
110 *
111 * @jvms 5.3 Creation and Loading
112 * @see <a href="{@docRoot}/../specs/jar/jar.html#package-sealing">
113 * The JAR File Specification: Package Sealing</a>
114 * @see ClassLoader#definePackage(String, String, String, String, String, String, String, URL)
115 *
116 * @since 1.2
117 * @revised 9
118 * @spec JPMS
119 */
120 public class Package extends NamedPackage implements java.lang.reflect.AnnotatedElement {
121 /**
122 * Return the name of this package.
123 *
124 * @return The fully-qualified name of this package as defined in section 6.5.3 of
125 * <cite>The Java™ Language Specification</cite>,
126 * for example, {@code java.lang}
127 */
128 public String getName() {
129 return packageName();
130 }
131
132 /**
133 * Return the title of the specification that this package implements.
134 * @return the specification title, {@code null} is returned if it is not known.
135 */
136 public String getSpecificationTitle() {
137 return versionInfo.specTitle;
138 }
139
140 /**
141 * Returns the version number of the specification
142 * that this package implements.
143 * This version string must be a sequence of non-negative decimal
144 * integers separated by "."'s and may have leading zeros.
145 * When version strings are compared the most significant
|
105 * @implNote
106 * The <a href="ClassLoader.html#builtinLoaders">builtin class loaders</a>
107 * do not explicitly define {@code Package} objects for packages in
108 * <em>named modules</em>. Instead those packages are automatically defined
109 * and have no specification and implementation versioning information.
110 *
111 * @jvms 5.3 Creation and Loading
112 * @see <a href="{@docRoot}/../specs/jar/jar.html#package-sealing">
113 * The JAR File Specification: Package Sealing</a>
114 * @see ClassLoader#definePackage(String, String, String, String, String, String, String, URL)
115 *
116 * @since 1.2
117 * @revised 9
118 * @spec JPMS
119 */
120 public class Package extends NamedPackage implements java.lang.reflect.AnnotatedElement {
121 /**
122 * Return the name of this package.
123 *
124 * @return The fully-qualified name of this package as defined in section 6.5.3 of
125 * <cite>The Java Language Specification</cite>,
126 * for example, {@code java.lang}
127 */
128 public String getName() {
129 return packageName();
130 }
131
132 /**
133 * Return the title of the specification that this package implements.
134 * @return the specification title, {@code null} is returned if it is not known.
135 */
136 public String getSpecificationTitle() {
137 return versionInfo.specTitle;
138 }
139
140 /**
141 * Returns the version number of the specification
142 * that this package implements.
143 * This version string must be a sequence of non-negative decimal
144 * integers separated by "."'s and may have leading zeros.
145 * When version strings are compared the most significant
|