Was ist Abstraktion in OOP?
Abstraktion ist das Konzept der objektorientierten Programmierung, das nur wesentliche Attribute "zeigt" und unnötige Informationen "verbirgt". Der Hauptzweck der Abstraktion besteht darin, die unnötigen Details vor den Benutzern zu verbergen. Bei der Abstraktion werden Daten aus einem größeren Pool ausgewählt, um dem Benutzer nur relevante Details des Objekts anzuzeigen. Es hilft bei der Reduzierung der Programmierkomplexität und des Programmieraufwands. Es ist eines der wichtigsten Konzepte von OOPs.
Klicken Sie hier, wenn das Video nicht zugänglich ist
Lassen Sie uns die Abstraktion in OOPs anhand eines Beispiels untersuchen:
Angenommen, Sie möchten eine Bankanwendung erstellen und werden aufgefordert, alle Informationen über Ihren Kunden zu sammeln. Es besteht die Möglichkeit, dass Sie folgende Informationen über den Kunden erhalten

Es sind jedoch nicht alle oben genannten Informationen erforderlich, um eine Bankanwendung zu erstellen.
Sie müssen also nur die nützlichen Informationen für Ihre Bankanwendung aus diesem Pool auswählen. Daten wie Name, Adresse, Steuerinformationen usw. sind für eine Bankanwendung sinnvoll, die in OOPs ein Beispiel für Abstraktion darstellt
Da wir die Kundeninformationen aus einem größeren Pool abgerufen / entfernt / ausgewählt haben, wird der Prozess in OOPs als Abstraktion bezeichnet.
Dieselben Informationen, die einmal extrahiert wurden, können jedoch für eine Vielzahl von Anwendungen verwendet werden. Beispielsweise können Sie dieselben Daten für Krankenhausanträge, Jobportalanträge, Regierungsdatenbanken usw. ohne oder mit nur geringen Änderungen verwenden. Daher werden es Ihre Stammdaten. Dies ist ein Vorteil der Abstraktion in OOPs.
Unterschied zwischen Abstraktion und Verkapselung
Abstraktion | Verkapselung |
Die Abstraktion in der objektorientierten Programmierung löst die Probleme auf Entwurfsebene. | Die Kapselung löst die Implementierungsebene. |
Bei der Abstraktion in der Programmierung geht es darum, unerwünschte Details zu verbergen und gleichzeitig die wichtigsten Informationen anzuzeigen. | Kapselung bedeutet, den Code und die Daten in einer Einheit zu binden. |
Die Datenabstraktion in Java ermöglicht es, sich auf das zu konzentrieren, was das Informationsobjekt enthalten muss | Kapselung bedeutet, die internen Details oder Mechanismen zu verbergen, wie ein Objekt aus Sicherheitsgründen etwas tut. |
Unterschied zwischen abstrakter Klasse und Schnittstelle
Abstrakte Klasse | Schnittstelle |
Eine abstrakte Klasse kann sowohl abstrakte als auch nicht abstrakte Methoden haben. | Die Schnittstelle kann nur abstrakte Methoden haben. |
Es werden keine Mehrfachvererbungen unterstützt. | Es unterstützt mehrere Vererbungen. |
Es kann die Implementierung der Schnittstelle bereitstellen. | Die Implementierung der abstrakten Klasse kann nicht bereitgestellt werden. |
Eine abstrakte Klasse kann geschützte und abstrakte öffentliche Methoden haben. | Eine Schnittstelle kann nur öffentliche abstrakte Methoden haben. |
Eine abstrakte Klasse kann eine endgültige, statische oder statische endgültige Variable mit einem beliebigen Zugriffsspezifizierer haben. | Die Schnittstelle kann nur eine öffentliche statische Endvariable haben. |
Was ist abstrakte Klasse?
Abstrakte Klasse ist eine Art von Klasse in OOPs, die eine oder mehrere abstrakte Methoden deklarieren. Diese Klassen können sowohl abstrakte als auch konkrete Methoden haben. Eine normale Klasse kann keine abstrakten Methoden haben. Eine abstrakte Klasse ist eine Klasse, die mindestens eine abstrakte Methode enthält.
Was sind abstrakte Methoden?
Abstrakte Methode ist eine Methode, die nur die Methodendefinition enthält, jedoch keine Implementierung enthält. Eine Methode ohne Körper wird als abstrakte Methode bezeichnet. Es muss in einer abstrakten Klasse deklariert werden. Die abstrakte Methode wird niemals endgültig sein, da die abstrakte Klasse alle abstrakten Methoden implementieren muss.
Vorteile der Abstraktion
- Der Hauptvorteil der Verwendung einer Abstraktion in der Programmierung besteht darin, dass Sie mehrere verwandte Klassen als Geschwister gruppieren können.
- Die Abstraktion in der objektorientierten Programmierung trägt dazu bei, die Komplexität des Entwurfs- und Implementierungsprozesses von Software zu verringern.
Wann sollten abstrakte Methoden und abstrakte Klassen verwendet werden?
Abstrakte Methoden werden meist deklariert, wenn zwei oder mehr Unterklassen durch unterschiedliche Implementierungen dasselbe auf unterschiedliche Weise tun. Es erweitert auch dieselbe Abstract-Klasse und bietet verschiedene Implementierungen der abstrakten Methoden.
Abstrakte Klassen helfen dabei, generische Verhaltensweisen und objektorientierte Programmierklassenhierarchien zu beschreiben. Außerdem werden Unterklassen beschrieben, um Implementierungsdetails der abstrakten Klasse bereitzustellen.
Zusammenfassung:
- Bei der Abstraktion in der Programmierung werden wichtige Datensätze für ein Objekt in Ihrer Software ausgewählt und die unbedeutenden Datensätze weggelassen.
- Sobald Sie Ihr Objekt mithilfe der Datenabstraktion in Java modelliert haben, kann derselbe Datensatz in verschiedenen Anwendungen verwendet werden.