Grundlagen der Objektorientierten Programmierung (OOP)
Eingeordnet in Lehre und Ausbildung
Geschrieben am in
Deutsch mit einer Größe von 2,9 KB
Methode des Objektorientierten Software-Designs
Die objektorientierte Methode des Software-Designs verwendet Modelle, die reale Gegenstände durch den Betrieb von Klassen und Objekten darstellen. Dies dient:
- Einer größeren Darstellung der Realität.
- Dem Ziel, Daten und Funktionen in einer kombinierten Einheit zu bündeln.
Diese Idee wurde mit Sprachen wie Smalltalk geboren.
Abstraktion
Abstraktion bezieht sich auf die Darstellung von Objekten, indem die wichtigsten Eigenschaften von unwesentlichen Details getrennt werden.
Sie erfolgt durch die Festlegung der wesentlichen Merkmale eines Objekts der realen Welt (Eigenschaften und Verhalten), die dann in ein Software-Objekt umgesetzt werden.
Modularität
Modularität beruht auf dem Konzept einzelner Komponenten oder Module (Klassen).
Dies ermöglicht es, die Eigenschaften einer Komponente zu ändern, ohne notwendigerweise Auswirkungen auf die anderen Module zu haben.
Kapselung (Encapsulation)
Kapselung ist die Eigenschaft, die gewährleistet, dass die internen Informationen eines Objekts für andere Objekte in der Anwendung unbekannt sind.
- Wird auch als Information Hiding bezeichnet.
- Hilft, Objekte davor zu schützen, durch externe Objekte nicht ordnungsgemäß behandelt oder manipuliert zu werden.
Hierarchie und Vererbung (Inheritance)
Vererbung ist eine Eigenschaft, die es Klassen ermöglicht, neue Klassen zu erstellen, die Eigenschaften (Attribute und Aktionen) von ihren Oberklassen erben.
Ziel ist die Wiederverwendung von bereits entwickeltem Code.
Arten der Vererbung
- Einfache Vererbung
- Ein Objekt (Klasse) kann nur von einer einzigen Oberklasse erben.
- Mehrfachvererbung
- Ein Objekt (Klasse) kann von einer oder mehreren Oberklassen erben.
Polymorphismus
Polymorphismus stützt sich darauf, dass Komponenten oder Objekte unterschiedlich auf verschiedene Aufrufe reagieren können.
Dies wird durch Methoden einer Klasse erreicht, die denselben Namen, aber unterschiedliche Implementierungen haben.
Überladen von Methoden (Method Overloading)
Das Überladen von Methoden bedeutet, zwei oder mehr Methoden innerhalb derselben Klasse mit dem gleichen Namen, aber unterschiedlichen Parameterlisten zu definieren.
Weitere wichtige Features
- Starke Typisierung: Unterstützt die Deklaration starker Datentypen, die jede Art von Variablen festlegen.
- Exception Handling: Ermöglicht das Erfassen und Verarbeiten von Ausnahmen (Fehlern), die während der Ausführung eines Programms auftreten können.
Flexibilität
Flexibilität ist Teil der Tatsache, dass aus der Definition der objektorientierten Prinzipien eine einfache Anpassung und Erweiterung der Software resultiert.