Simplify calls `Class.forName(String, boolean, ClassLoader)` instead of 
`Class.forName(String)`. `make test 
TEST="jtreg:test/jdk/java/lang/reflect/Proxy"` passes, with the new 
`LazyInitializationTest` failing the eager initialization check on the baseline 
and passing with this patch.

On a side note, this might reduce the number of methods that can be encoded in 
a proxy due to code attribute size restrictions; we probably would address that 
in another issue, as we never mandated a count of methods that the proxy must 
be able to implement.

Mandy, would you mind review this?

-------------

Commit messages:
 - whitespace
 - Copyright year
 - typo
 - 8285401: Proxy class initializer should use 3-arg `Class.forName` to avoid 
unnecessary class initialization
 - Test for eager initialization

Changes: https://git.openjdk.java.net/jdk/pull/8800/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8800&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8285401
  Stats: 78 lines in 2 files changed: 74 ins; 0 del; 4 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8800.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8800/head:pull/8800

PR: https://git.openjdk.java.net/jdk/pull/8800

Reply via email to