Olá pessoal!!
Tenho algumas dúvidas espero poder saná-las aqui nesse tópico.
Bom, digamos que eu tenha uma classe A qualquer.
Ai, eu criei uma classe B que extends de A. Então quer dizer que ela herda tudo que tem na classe A.
Agora é que entra minha dúvida…se eu criar uma classe C ela pode herdar de B, então eu tenho de implements de B?
Equando se tem uma classe de interface ela pode ser herdada por outra classe ou ela tem de ser implements por outra classe?
Ficou meio confuso isso aí, mas vamos lá.
Se B é uma classe, você tem que extende-la (extends) pois não há como implementar uma classe, visto que se é uma classe é porque já está implementada, então você só pode herdar, portanto não faz sentido dar um implements em outra classe, você receberá um erro de compilação.
Já uma interface pode ser extendida por outra interface (interface A extends interface B), ou implementada por uma classe (implements).
Ex.:
[code]public class A{
}
public class B extends A { //OK
}
public class B implements A { //Erro de compilação
}
public interface C {
}
public interface D extends C { //OK
}
public interface D implements C { //Erro de compilação
}
public class E implements D { //OK
}
public class E extends D { //Erro de compilação
}[/code]
Espero que tenha esclarecido, se tiver ficado alguma duvida é só falar.
Bom, vc focou mais erros de sintaxe né… tipo, quando usar isso para não dar erro de compilação…
Mas ajudou, obrigado!!!