AFAIK, le mie classi extendsgenitore e le implementsinterfacce. Ma mi imbatto in una situazione, in cui non posso usare implements SomeInterface. È la dichiarazione di un tipo generico. Per esempio:
public interface CallsForGrow {...}
public class GrowingArrayList <T implements CallsForGrow> // BAD, won't work!
extends ArrayList<T>
Qui l'uso implementsè sintatticamente proibito. Ho pensato prima che l'uso dell'interfaccia all'interno di <> sia assolutamente proibito, ma no. È possibile, devo solo usare al extendsposto di implements. Di conseguenza, sto "estendendo" un'interfaccia. Questo altro esempio funziona:
public interface CallsForGrow {...}
public class GrowingArrayList <T extends CallsForGrow> // this works!
extends ArrayList<T>
A me sembra un'incoerenza sintattica. Ma forse non capisco alcune finezze di Java 6? Ci sono altri posti in cui dovrei estendere le interfacce? L'interfaccia, che intendo estendere, dovrebbe avere alcune funzionalità speciali?