`Class` has 2 VM-injected fields that can be made explicit: `Object[] signers` and `ProtectionDomain protectionDomain`. We make the signers field explicit. (The ProtectionDomain can be revisited when SecurityManager is removed, as SecurityManager is accessing it via JNI as well.)
Migrate the JNI code to Java. The getter previously had a redundant primitive type check, which is dropped in the migrated Java code. The `Object[] getSigners` is no longer `native`, thus requiring a CSR record. Reviewers please help review the associated CSR. ------------- Commit messages: - 8334772: Change Class::signers to an explicit field Changes: https://git.openjdk.org/jdk/pull/20223/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20223&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8334772 Stats: 71 lines in 6 files changed: 7 ins; 53 del; 11 mod Patch: https://git.openjdk.org/jdk/pull/20223.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20223/head:pull/20223 PR: https://git.openjdk.org/jdk/pull/20223