-
Bug
-
Resolution: Fixed
-
P2
-
8
-
b124
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8038584 | 9 | Bhavesh Patel | P2 | Resolved | Duplicate | |
JDK-8032185 | 8u20 | Bhavesh Patel | P2 | Closed | Fixed | b01 |
JDK-8032431 | 8u5 | Bhavesh Patel | P2 | Resolved | Fixed | b05 |
Functional Interface:
This is a functional interface and can therefore be used as the
assignment target for a lambda expression or method reference.
It does so if the interface being processed matches the structure of a functional interface, that is, it has a single abstract method.
However, not all single-abstract-method interfaces are actually suitable for use with lambda. The @FunctionalInterface annotation was added to mark the interfaces that are intended to be used with lambda. This annotation was initially added to many single-abstract-method interfaces, but later
Thus, javadoc should be changed to emit the Functional Interface blurb based on the presence of the @FunctionalInterface annotation, not on the structure (single abstract method) of the interface being processed.
Filing this as P2 since this really ought to be fixed before 8 ships, since it affects the API specification that will be posted and referred to on the web for years. (And to attract some attention as well. Sorry.)
We still need to get buy-in from the lambda team on whether they agree this is the right thing to do, but at this writing it does seem sensible to make this change.
- backported by
-
JDK-8032431 javadoc standard doclet should add Functional Interface blurb when @FunctionalInterface annotation is present
- Resolved
-
JDK-8038584 javadoc standard doclet should add Functional Interface blurb when @FunctionalInterface annotation is present
- Resolved
-
JDK-8032185 javadoc standard doclet should add Functional Interface blurb when @FunctionalInterface annotation is present
- Closed
-
JDK-8038295 javadoc standard doclet should add Functional Interface blurb when @FunctionalInterface annotation is present
- Closed
- relates to
-
JDK-8022658 Revisit FunctionalInterface on some core libs types
- Resolved