Small clarification about the parent of the system class loader in the ClassLoader class
spec:

diff --git a/src/java.base/share/classes/java/lang/ClassLoader.java 
b/src/java.base/share/classes/java/lang/ClassLoader.java
--- a/src/java.base/share/classes/java/lang/ClassLoader.java
+++ b/src/java.base/share/classes/java/lang/ClassLoader.java
@@ -133,7 +133,7 @@
  *     It is the virtual machine's built-in class loader, typically represented
  *     as {@code null}, and does not have a parent.</li>
  * <li><p>{@linkplain #getPlatformClassLoader() Platform class loader}.
- *     All <em>platform classes</em> are visible to the platform class loader
+ *     <em>Platform classes</em> are visible the platform class loader
  *     that can be used as the parent of a {@code ClassLoader} instance.
  *     Platform classes include Java SE platform APIs, their implementation
  *     classes and JDK-specific run-time classes that are defined by the
@@ -152,7 +152,7 @@
  *     The system class loader is typically used to define classes on the
  *     application class path, module path, and JDK-specific tools.
  *     The platform class loader is a parent or an ancestor of the system class
- *     loader that all platform classes are visible to it.</li>
+ *     loader which searches and loads the platform classes through its 
parent.</li>
  * </ul>
  *
  * <p> Normally, the Java virtual machine loads classes from the local file




I dropped the word "All" because which platform modules are resolved in
the module graph depends on the root modules of the runtime configuration.
A platform module may not be resolved in some configuration and hence
not all platform classes are visible to the platform class loader.

Mandy

Reply via email to