Olá pessoal, tem uma regra que não entendi:
“Declare no checked exceptions on implementation methods other than those declared by the interface method, or subclasses of those declared by the interface method”
Alguem pode me explicar? Obrigado!
Olá pessoal, tem uma regra que não entendi:
“Declare no checked exceptions on implementation methods other than those declared by the interface method, or subclasses of those declared by the interface method”
Alguem pode me explicar? Obrigado!
public interface Openable
public void open();
}
public class Door implements Openable{
private boolean opened;
@Override
public void open(){
opened = true;
}
}
public class DoorTest{
public static void main(String[] args){
Door door = new Door();
door.open();
}
}
public void open() throws DoorAlreadyOpenedException{
if(opened){
throw new DoorAlreadyOpenedException("This door is already opened!");
}else{
opened = true;
}
}
public void open(Openable openable){
openable.open();
}
Por isso que um método que implementa um método pré-definido em uma interface, não pode lançar nenhuma exceção não-verificada que não tenha sido declarada na própria interface.
Fez sentido?