Hola, tengo un problemilla, con la declaracion de excepciones de una clase que implementa la interfaz Observer.
Para la realizacion de esta clase llamada Sesion, (sera una clase observadora) implemento la interfaz observer, que tiene a su vez un metodo, llamado update que hay que redefinir.
Una vez redefinido este metodo, quiero propagar las excepciones de 2 metodos que utiliza interiormente el metodo update.
El tema es que yo quiero hacer un throw de las excepciones de estos metodos, hacia la interfaz grafica que sera otra clase. Pero cuando en la cabecera del metodo pongo:
public void update(Observable pTablero ,Object pArg) throws ExcepcionPartidaNoAcabada,
el compilador me dice que:
update(java.util.Observable,java.lang.Object) in packBuscaminas.Sesion cannot implement update(java.util.Observable,java.lang.Object) in java.util.Observer; overridden method does not throw packBuscaminas.ExcepcionPartidaNoAcabada
public void update(Observable pTablero ,Object pArg) throws ExcepcionPartidaNoAcabada
1 error
Es decir no me deja propagarlo, y no se porque, (hay que decir que la clase Sesion es la mas alta dentro de la jerarquia, de clases que tengo). Solo me deja hacer los correspondientes try..catch en los metodos que utiliza el update, para tratar hay los posibles errores, pero en ningun momento me deja propagarlo con throw.
A lo mejor es no puedo propagarlo porque estoy en la clase mas alta, y el compilador no sabe entonces donde va tratarlo , pero me parece raro....
Alguien sabe a que se debe ese error y como puedo solucionarlo.
Saludos y perdon por el ladrillo.