Junior — Middle
Kun je een voorbeeld geven van een abstracte klasse in objectgeoriënteerd programmeren?
sobes.tech AI
Antwoord van AI
Een abstracte klasse is een klasse die niet bedoeld is om direct instanties te maken, maar dient als basis voor andere klassen. Het kan zowel geïmplementeerde methoden als abstracte methoden (zonder implementatie) bevatten, die in de subclasses geïmplementeerd moeten worden.
Voorbeeld van een abstracte klasse in Java (Android):
public abstract class Animal {
// Abstracte methode — moet worden geïmplementeerd in subclasses
public abstract void makeSound();
// Normale methode met implementatie
public void sleep() {
System.out.println("Dier slaapt");
}
}
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Woef!");
}
}
// Gebruik
Animal dog = new Dog();
dog.makeSound(); // Print: Woef!
dog.sleep(); // Print: Dier slaapt
In dit voorbeeld is Animal een abstracte klasse met een abstracte methode makeSound(). De klasse Dog erft van Animal en implementeert deze methode.