Ancora ciao a tutti.

Ho la seguente interfaccia:

codice:

public interface CollezioneOrdinata<E extends Comparable<? super E>> extends Iterable<E> {
	
	int size();
	void aggiungi(E elem);
	boolean rimuovi(E elem);
	boolean rimuoviIntervallo(E min, E max);
	boolean rimuovi(CollezioneOrdinata<E> c);
	boolean rimuoviIntervallo(CollezioneOrdinata<E> c, E min, E max);
	void aggiungi(CollezioneOrdinata<E> c);
	void aggiungiIntervallo(CollezioneOrdinata<E> l, E min, E max);
	CollezioneOrdinata<E> intervallo(E min, E max);

}

Volendo scrivere una classe che la implementa , per esempio CollezioneOrdAstratta

codice:
public CollezioneOrdAstratta<E> implements CollezioneOrdinata<E>{
....
....
}
Su eclipse mi sottolinea in rosso la variabile di tipo E.

Qual'e il modo corretto per scrivere questa porzione di codice?

dovevo scrivere cosi?

codice:
public CollezioneOrdAstratta<E extends Comparable<? super E>> implements CollezioneOrdinata<E extends Comparable<? super E>>