The override of `getParams` in these interfaces has an `@since 22`, but the method has been inherited to these interfaces for a long times,
As pointed out by my mentor Jan, import javax.crypto.interfaces.DHPublicKey; public class DhkeyTest { public static void main(DHPublicKey key) { System.err.println(key.getParams()); } } this compiles using JDK 8 without any compile-time errors. The @ since tag shouldn't be here - the same goes for these other interfaces java.security.interfaces.DSAPublicKey java.security.interfaces.XECPublicKey java.security.interfaces.DSAPrivateKey java.security.interfaces.ECPrivateKey java.security.interfaces.XECPrivateKey java.security.interfaces.EdECPrivateKey java.security.interfaces.ECPublicKey java.security.interfaces.EdECPublicKey javax.crypto.interfaces.DHPrivateKey javax.crypto.interfaces.DHPublicKey - these two should, have @ since 11 though java.security.interfaces.RSAPublicKey java.security.interfaces.RSAPrivateKey ------------- Commit messages: - removed unnecessary @ since tags - fix rest of private/public since tags Changes: https://git.openjdk.org/jdk/pull/18373/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=18373&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8328501 Stats: 12 lines in 12 files changed: 0 ins; 10 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/18373.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/18373/head:pull/18373 PR: https://git.openjdk.org/jdk/pull/18373