Certificação Java

3 respostas
RDS1

Pessoal pq eu não posso estender a classe e reescrever um metodo lançando uma exception?

<code>

  1. public class SomeException {
  2. }
    Class A:
  3. public class A {
  4. public void doSomething() { }
  5. }
    Class B:
  6. public class B extends A {
  7. public void doSomething() throws SomeException { }
  8. }
    <code>

3 Respostas

leonardobhbr

Amigo mude o titulo do seu tópico outra coisa use a tag code não é < e sim colchete.

Outra dica compre um livro para certificação para te ajudar

E

Então amigo se esse método não lança nenhuma exception , você pode sobrescrever ele apenas lançando exception de RunTime.
Mas se esse método lança exception não de RunTime você pode sobrescrever ele lançando a mesma exception ou uma mais abrangente que aquela lançada .
“Uma que seja uma sub-classe dela”.

mausexdd

Então amigo se esse método não lança nenhuma exception , você pode sobrescrever ele apenas lançando exception de RunTime.
Mas se esse método lança exception não de RunTime você pode sobrescrever ele lançando a mesma exception ou uma mais abrangente que aquela lançada .
“Uma que seja uma sub-classe dela”

Resumindo , se o método que vai ser subscrito não lança nenhuma exceção explicita , consequentemente o método da classe filha tbm não poderá declarar nenhuma exceção
Lembre-se todos os metodos declaram RUNTIMEEXCEPTION implicitamente.

Criado 19 de outubro de 2011
Ultima resposta 20 de out. de 2011
Respostas 3
Participantes 4