• Matéria: Informática
  • Autor: lukasbraga
  • Perguntado 9 anos atrás

Quando estamos desenvolvendo um software, algumas vezes precisamos escolher entre criar uma classe abstrata ou uma interface. A escolha vai depender de onde a classe ou interface será utilizada. Cada uma possui vantagens e desvantagens. Assinale a alternativa correta: ALTERNATIVAS Uma classe abstrata não pode ter implementação nos métodos Uma interface é adequada quando precisamos criar uma implementação padrão para um método Uma classe abstrata deve ter todos os seus métodos abstratos A vantagem de se utilizar interfaces é que elas podem ser instanciadas Uma classe abstrata não pode ser instanciada e serve como molde para as suas subclasses

Respostas

respondido por: naccib
1
A última alternativa é a correta.

Uma classe abstrata não pode ser instanciada.
Isso quer dizer que se eu tiver uma classe abstrata Foo e tentar fazer Foo instancia = new Foo();, não vai funcionar.

Ela serve de molde para subclasses.
Digamos que eu tenha duas classes:
* Foo, que é abstrata
* Bar, que não é abstrata e é filha de Foo

Se eu fizer, Foo instancia = new Bar();, o código funciona.
Perguntas similares