Junior
Wat zijn anonieme klassen en waar worden ze toegepast?
sobes.tech AI
Antwoord van AI
Een anonieme klasse is een lokale interne klasse zonder naam.
-
Toepassingen:
- Bij het maken van gebeurtenis- luisteraars in GUI-toepassingen (bijvoorbeeld voor knoppen).
- Voor het implementeren van interfaces of het uitbreiden van abstracte klassen "ter plaatse", wanneer slechts één instantie nodig is en het gebruik ervan lokaal is.
- In multithread programming voor het maken van instanties van
RunnableofCallable.
-
Voordelen:
- Vermindert de hoeveelheid code wanneer hergebruik van de klasse niet nodig is.
- Vereenvoudigt de code voor eenvoudige, eenmalige implementaties.
-
Nadelen:
- Kan de code minder leesbaar maken voor complexe implementaties.
- Kan niet worden hergebruikt.
- Toegang tot velden van de externe klasse gebeurt alleen via
finalof effectief final variabelen in oudere Java-versies.
// Voorbeeld van gebruik van een anonieme klasse voor Runnable
Runnable myRunnable = new Runnable() {
@Override
public void run() {
System.out.println("Uitvoeren in een anonieme klasse thread.");
}
};
new Thread(myRunnable).start();
// Voorbeeld van gebruik van een anonieme klasse voor een gebeurtenislistener (hypothetisch)
// Sommige UI-frameworks gebruiken deze aanpak.
//button.setOnAction(new EventHandler<ActionEvent>() {
// @Override
// public void handle(ActionEvent event) {
// System.out.println("Knop geklikt!");
// }
//});