Precisei implementar os padrões mediator e observer, dessa vez tendo a oportunidade de utilizar java1.5.
E percebi que a implementação nativa do padrão na JDK não utiliza generics.
Andei pesquisando e até encontrei um artigo interessante:
http://gnoack.wordpress.com/2008/02/26/observer-pattern-revisited-using-java-5-generics/
Acho que seria excelente ter algo como:
public interface Observer<T extends Observable> {
public void update(T observable, Object arg);
}
public abstract class Observable<T extends Observer> {
//...Métodos de Observable
}
Pensei em escrever um Adapter mas a interface complica.