RFR: 4397513: Misleading "interface method" in InvocationHandler specification

Jaikiran Pai jpai at openjdk.org
Wed Oct 29 14:56:56 UTC 2025


On Wed, 29 Oct 2025 14:28:41 GMT, Chen Liang <liach at openjdk.org> wrote:

>> src/java.base/share/classes/java/lang/reflect/InvocationHandler.java line 59:
>> 
>>> 57:      * the method invoked on the proxy instance; the declaring
>>> 58:      * class of the {@code Method} object may be a proxy interface,
>>> 59:      * one of their superinterfaces, or the {@code Object} class
>> 
>> Hello Chen, would it be better to word that latter part of the sentence as:
>> 
>>> the declaring class of the {@code Method} will either be one of the interfaces implemented by the proxy instance, or one of their super interfaces, or the {@code Object} class.
>
> Hi Jai, the term "proxy interface" is defined in java.lang.reflect.Proxy, together with "proxy instance":
> 
>> A <em>proxy class</em> is a class created at runtime that implements a specified
>> list of interfaces, known as <em>proxy interfaces</em>. A <em>proxy instance</em>
>> is an instance of a proxy class.
> 
> So I believe the term "proxy interface" makes sense when you have a "proxy instance" in the context.

Thank you for quoting that text - you are right, that term is already specified, so the changes you have here looks good to me.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28024#discussion_r2473606063


More information about the core-libs-dev mailing list