Olá a todos no Forum, achei estas duas questões no site da Caelum, e gostaria que você me ajudassem a tirar estas dúvidas;
Questão 1:
Pq este programa não roda?
class Acao {
public void executa() {
System.out.println("Executando a ação");
}
}
class ExecutaVenda extends Acao {
public void executa() {
vende();
}
public void vende() {
System.out.println("Vendendo");
}
}
class Programa {
public static void main(String[] args) {
Acao acao = new ExecutaVenda();
acao.vende();
}
}
Questão2:
As exceptions que sempre somos obrigados a colocar um try/catch ou declará-la no throws são:
A)filhas de CheckedException
B)filhas de RuntimeException
C)filhas de Exception
D)filhas de Exception desde que não sejam filhas de RuntimeException
E)filhas de Throwable
F)filhas de Error desde que não sejam filhas de RuntimeException
G) todas
Eu marquei letra C, mas a correta era letra D, ai surgiu a dúvida. Como uma exception, pode ser filha de duas classes ao mesmo tempo? sendo que o Java não aceita Herança Múltipla, e mais as duas Classes RuntimeException e Exception não são filhas de Throwable, se alguem puder explicar melhor, porque fiquei totalmente confuso.
Att

