Abstraktion
Abstraktion in der objektorientierten Programmierung
Abstraktion ist eines der Grundprinzipien der objektorientierten Programmierung (OOP). Sie bedeutet, dass komplexe Systeme auf ihre wesentlichen Eigenschaften reduziert werden, damit sie einfacher verständlich und verwendbar sind. Unwichtige Details werden ausgeblendet, während nur das gezeigt wird, was für die Nutzung eines Objekts wirklich relevant ist.
Was bedeutet Abstraktion?
Abstraktion bedeutet:
- wichtige Eigenschaften hervorheben
- unwichtige Informationen verbergen
- komplizierte Systeme vereinfachen
- klare Schnittstellen anbieten
Beispiel: Ein Auto wird als „Auto“ betrachtet, nicht als Summe aller Schrauben, Kabel und Sensoren. Man nutzt nur relevante Funktionen wie fahren(), bremsen() oder lenken().
Abstraktion in Klassen und Objekten
In der OOP werden Klassen so gestaltet, dass sie:
- nur notwendige Attribute enthalten
- nur sinnvolle Methoden anbieten
- interne Abläufe verstecken
Damit wird die Nutzung einer Klasse einfacher und sicherer.
Beispiel:
class Auto {
private int geschwindigkeit;
public void beschleunigen() { // sichtbar
geschwindigkeit += 10;
}
private void verbrennung() { // verborgen
// interne Logik
}
}
Die Methode verbrennung() ist intern und für den Nutzer der Klasse irrelevant. Das ist Abstraktion.
Abstraktion durch abstrakte Klassen und Interfaces
Bei komplexen Programmen hilft Abstraktion, Gemeinsamkeiten zu definieren, ohne konkrete Details festzulegen.
Abstrakte Klassen
- definieren gemeinsame Eigenschaften
- können abstrakte Methoden enthalten (ohne Implementierung)
- dienen als Vorlage für andere Klassen
Interfaces
- legen fest, welche Methoden eine Klasse besitzen muss
- enthalten keine konkreten Implementierungen
- machen Objektstrukturen einheitlich nutzbar
Vorteile der Abstraktion
- Programme werden übersichtlicher
- leichter zu verstehen und zu verwenden
- fördert klare Strukturen
- reduziert Fehler, da unnötige Details verborgen bleiben
- ermöglicht Wiederverwendbarkeit und Erweiterbarkeit
Kurzmerksatz
Abstraktion bedeutet, ein Objekt auf das Wesentliche zu reduzieren und unnötige Details zu verbergen, damit Programme einfacher und klarer werden.
