Sobes.tech
Junior — Middle

Podes dar um exemplo de uma classe abstrata na programação orientada a objetos?

sobes.tech IA

Resposta da IA

Uma classe abstrata é uma classe que não é destinada a criar instâncias diretamente, mas serve como classe base para outras classes. Pode conter métodos implementados e também métodos abstratos (sem implementação), que devem ser implementados nas subclasses.

Exemplo de uma classe abstrata em Java (Android):

public abstract class Animal {
    // Método abstrato — deve ser implementado nas subclasses
    public abstract void makeSound();

    // Método normal com implementação
    public void sleep() {
        System.out.println("Animal está a dormir");
    }
}

public class Dog extends Animal {
    @Override
    public void makeSound() {
        System.out.println("Au au!");
    }
}

// Uso
Animal dog = new Dog();
dog.makeSound(); // Vai imprimir: Au au!
dog.sleep();     // Vai imprimir: Animal está a dormir

Neste exemplo, Animal é uma classe abstrata com um método abstrato makeSound(). A classe Dog herda de Animal e implementa esse método.