Middle
É possível criar um objeto de uma classe abstrata em Java?
sobes.tech IA
Resposta da IA
No Java, não é possível criar um objeto de uma classe abstrata diretamente, pois a classe abstrata destina-se a servir de base para outras classes e pode conter métodos abstratos sem implementação. No entanto, é possível criar um objeto de uma classe anônima que herda da classe abstrata, implementando todos os métodos abstratos no local.
Exemplo:
abstract class Animal {
abstract void sound();
}
public class Main {
public static void main(String[] args) {
Animal a = new Animal() {
void sound() {
System.out.println("Meow");
}
};
a.sound(); // Vai imprimir "Meow"
}
}
Dessa forma, o objeto não é criado diretamente de uma classe abstrata, mas de uma classe anônima que a herda e implementa todos os métodos abstratos.