Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
There are a few issues with the specification of class loading: - Checks relating to `final` classes and methods, and an absent superclass, occur in practice at class loading time, not verification time. They should appear in 5.3.5, not 4.10. (There's actually quite a lot of overhead in 4.10 to support these checks. With the change, verification is only concerned with methods with code.) - The rules preventing circularity in superclasses/superinterfaces are imprecise. - Class loading behavior when there are multiple threads attempting to load a class is unspecified. - The behavior when a `loadClass` method does not behave as expected or throws an exception is not fully specified. - The notion of creating an "array class" does not belong in a discussion about class loading. (The section is about processing `class` files, not accounting for every java.lang.Class instance.)
|