CSR :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
For JDK 9, JDK-8071453 adds support for private methods in interfaces. As noted there, at the VM level, private interface methods have been allowed since JDK 8. However, we also need to be able to debug these methods and as such we need to incorporate them into the JNI, JDWP, JDI and JDB specifications and API's. For example, at present com.sun.jdi.ObjectReference.invokeMethod is specified to throw IllegalArgumentException if the NONVIRTUAL invocation mode is specified and the method is "abstract or a non-default interface method". [Aside: the specification is actually in error as it already precludes invoking static interface methods!]. The JNI, JDWP, and JDB specifications and APIs need to examined to see whether they permit the appropriate interactions with private interface methods.
|