RFR(s): 8060192: Add default method Collection.toArray(generator)
stuart.marks at oracle.com
Fri Dec 8 00:47:03 UTC 2017
On 12/7/17 3:50 PM, Jonathan Bluett-Duncan wrote:
> Looking over
> I'm wondering if the method `ArrayList.toArray(IntFunction)` should have an
> `@Override` to make it clear that it's overriding the default method in
> Collection. What do you think?
I guess it wouldn't hurt. I had thought about adding it, but most of the methods
in ArrayList that override implementations from supertypes *don't* have
@Override. Looking more closely, it appears that the ones that override
interface default methods *do* have @Override.
I don't think there's a rule that says that @Override should be used when
overriding interface default methods but not when overriding implementations
from a superclass or when implementing an abstract interface method. Frankly, I
think the JDK is just sloppy here. Most of the existing implementations didn't
use @Override -- possibly because they were introduced before annotations
existed -- and later on, whoever implemented the overrides of the Java 8 default
methods decided to add @Override.
More information about the core-libs-dev