JDK 8 code review request for 8005298 Add FunctionalInterface type to the core libraries

Mike Duigou mike.duigou at oracle.com
Tue Jan 8 21:49:28 UTC 2013

Perhaps {@code} around java.lang.Object. 

The default method and overriding Object method sentences could perhaps be said more simply:

{@linkplain  java.lang.reflect.Method#isDefault() default methods} in interfaces do provide a method implementation and are not considered abstract.

Interface methods which match methods of java.lang.Object are not considered abstract because an implementation (from java.lang.Object) is always available.

Mostly it's enough to say that they aren't abstract. The part about abstract method count is superfluous.

@jls ref for default methods.

@jls ref for methods of Object.

On Jan 8 2013, at 13:24 , Joe Darcy wrote:

> Hello,
> As discussed over on one of the Project Lambda lists [1], we're adding an interface type to the platform to explicitly mark interface types as being functional interfaces suitable for use in lambda expressions.  Please review the addition of this new type:
>    http://cr.openjdk.java.net/~darcy/8005298.0/
> Follow-up work will add @FunctionalInterface annotations to appropriate platform classes.
> Thanks,
> -Joe
> [1] http://mail.openjdk.java.net/pipermail/lambda-libs-spec-experts/2012-December/000846.html

More information about the core-libs-dev mailing list