On 15/04/2020 12:45, Alex Sviridov wrote:
Hi Alan,
Thank you very much for such detailed answer! Only one note — is the following
paragraph right?
«When Child2 is created it will create L2 and map moduleC to L2. When
code in moduleC tried to resolve a reference to a class in its own
module then it will be loaded by L1 (POINT X) (no delegation). When moduleC
references a b.* class then it will be delegate to L2 (POINT Y) to resolve the
reference. When moduleC references a class in java.base then L1 will
delegate to the boot loader.»
Maybe POINT X = L2 and POINT Y = L1 ???
Sorry about, I don't know how they got transposed.
In any case, I hope it is clearer how these class loaders delegate.
-Alan