Einführung in die objektorientierte Programmierung (z.B. ABAP)

Einführung in die objektorientierte Programmierung (z.B. ABAP)
4.9 Sterne
18 Bewertungen


In diesem Artikel werden einige wichtige Begriffe der objektorientierten Programmierung  erläutert. Die drei wichtigsten Elemente sind: Methoden, Attribute und Klassen. Diese werden mit Hilfe einer Pferde-Metapher näher erläutert.

Alles ist ein Objekt. Die Objekte kommunizieren durch Methoden. Jedes Objekt ist ein Exemplar einer Klasse.

Objekte – haben eine von der Klasse bestimmte Gestalt (Attribute) und Fähigkeiten (Methoden). Objekte haben etwas (Attribute) und machen etwas (Methoden). Typischerweise werden in den Attributen Daten abgelegt.

Objektorientierte Programmierung

Klasse – legt die prinzipielle Gestalt (Attribute) und Fähigkeiten (Methoden) der Objekte fest. Klassen sind also: Bauplan für Objekte; Oberbegriff für verschiedene Objekte; Schablone für verschiedene Objekte. Mit der Klasse selbst können Sie wenig anfangen, so können Sie mit einem Bauplan nichts machen. Aber Sie können den Bauplan nutzen um etwas herzustellen. So können Sie aus einer Klasse (Bauplan) beliebig viele Objekte erzeugen.
Wenn Sie nun eine Klasse „Auto“ (einen Bauplan für ein Auto) haben, können Sie mit der Klasse mehrere Autos bauen. Diese können verschiedene Farben: rot, schwarz und blau (Ausprägungen des Attributs Farbe) haben.
Häufig ist auch von Instanzen die Rede. Allerdings sind Objekte und Instanzen das gleiche. Ein Objekt ist die Instanz einer Klasse. Das Erzeugen eines Objekts wird auch als Instanziieren der Klasse bezeichnet.
Objekte haben Attribute und Methoden.
Attribute – kennzeichnen die Eigenschaften und somit die Unterschiede zwischen den Objekten. So sind verschiedene Pferde unterschiedlich groß. Alle können laufen, aber unterschiedlich schnell. Beide besitzen eine Geschwindigkeit, aber ein Pferd steht und das andere bewegt sich in dem Moment langsam.
Methoden – sind Fähigkeiten der Objekte. Wenn ich dem Pferd Black mitteilen will, das es laufen soll, muss ich die Methode „Laufen“ des Objekts Pferd Black aufrufen. Und mit dem Attribut „Geschwindigkeit“ kann man bestimmen wie schnell das Pferd laufen soll. Generell sind die Methoden zunächst einer Klasse zugeordnet. Damit Sie diese nutzen können, müssen Sie ein Objekt der Klasse erzeugen.

Fazit: Ein Objekt lässt sich mit einem natürlichen Lebewesen vergleichen und verfügt über eine Gestalt und bestimmte Fähigkeiten. Die Gestalt prägt die Attribute, während die Fähigkeiten von Methoden bestimmt sind. Beide Bestandteile eines Objekts sind in der Klasse festgelegt, von der ein Objekt stammt. Sie liefert den Bauplan für gleichartige Objekte.

Kapselung – Jedes Objekt besitzt eine Kapsel, welche Daten und Methoden des Objekts vor unerwünschten Zugriffen schützt. Die Kapsel versteckt die Teile des Objekts, die von außen nicht oder nur durch bestimmte andere Objekte erreichbar sein sollen. Die Stellen, an denen die Kapsel durchlässig ist, nennt man Schnittstellen.
Die wichtigste Schnittstelle der Klasse Pferd ist sein Konstruktor. Über diese spezielle Methode lässt sich ein weiteres Objekt der Klasse Pferd erzeugen. Ein anderes Beispiel für eine Schnittstelle ist die Methode „Laufen“ der Klasse Pferd. Das Objekt Pferd Black besitzt eine solche Methode „Laufen“ und Adam, ein Objekt der Klasse Mensch, kann diese Methode verwenden. Er kommuniziert mit dem Pferd Black über diese Schnittstelle und teilt darüber Black mit, dass er laufen soll.
Das Objekt Adam darf jedoch nicht alle Daten von Pferd Black verändern. So soll es ihm selbstverständlich nicht erlaubt sein, die Größe des Pferds zu ändern. Gäbe es eine öffentlich zugängliche Methode „Wachsen“, so könnte er Pferd Black damit verändern.
Mit Hilfe der Kapselung wird verhindert, dass ein Programmteil einen anderen (sei es absichtlich oder unabsichtlich) verändert.

Um es noch genauer zu verdeutlichen möchte ich ein praktisches Beispiel aus der JavaScript Welt anführen. JavaScript ist eine Sprache für Webseiten.
So ist das Fenster, welches Sie gerade offen haben, eine Klasse. Wenn Sie diese Webseite in einem Reiter (Tab) aufrufen, so ist das Fenster ein Objekt. Dieses spezifische Fenster ist ein Exemplar von der Klasse „Fenster“. Schließlich sehen alle Fenster ersteinmal gleich aus.
Im JavaScript ist dieses Fenster ein window Objekt (Anzeigefenster). Dieses Objekt hat spezifische Eigenschaften bzw. Attribute: zum Beispiel Fenstername window.name, Höhe des Fensters window.outerHeight oder die Breite window.outerWidth. Das Objekt window hat auch bestimmte Fähigkeiten bzw. Methoden. So kann ein Dialogfenster ausgegeben werden window.alert(), das Fenster kann sich selbst schließen window.close() oder auch mit der Methode window.open() ein neues Fenster aufmachen (was manchmal sehr nervig ist).
Das Objekt window kann wiederrum ein Unterobjekt document haben, also das Dokument im Anzeigefenster. Zum Beispiel diese Webseite „index.php“. Dieses Objekt hat Eigenschaften bzw. Attribute wie document.bgColor (Hintergrundfarbe) oder document.fgColor (Textfarbe).
Diese Webseite, „index.php“, hat aber auch selbst Unterobjekte. Das ist im Grunde alles was Sie hier sehen. Die Überschrift „Einführung in die objektorientierte Programmierung (z.B. ABAP)“, das Bild, einzelne Textpassagen. Alle diese Objekte haben ihre individuellen Eigenschaften oder Attribute wie Größe size, Schrift font, Farbe color etc. Diese sind über eine id eindeutig identifizierbar.
Mein Objekt document (diese Webseite) kann die einzelnen Unterobjekte über die Methode document.getElementById() ansprechen und gegenbenenfalls auch mit document.write() ändern.

Ihre User beklagen sich über langsame Berichte?

  • In meinem Newsletter lernen Sie, wie Sie Abhilfe schaffen.
  • Entdecken Sie die Möglichkeiten der Performanceoptimierung.
  • Praktische Anleitungen ermöglichen Ihnen schnelle Erfolge bei der Optimierung von SAP Systemen.
  • Viele Tipps und Tricks zu SAP BI Themen.
  • Holen Sie die maximale Performance aus Ihrem SAP BI!
  • Bei der Anmeldung zu meinem Newsletter erhalten Sie das Buch „High Performance SAP BI“ als Willkommensgeschenk.
Fordere SAP Performance Tricks an

Jetzt anfordern!

* Pflichtfeld
 
Kein SPAM. Ich hasse Spam genau so wie du.

Quellen:
SELFHTML: JavaScript Objektreferenz
http://www.malvorlagen.cc/malvorlage/gesatteltes-Pferd/

Falls Ihnen dieser Beitrag weitergeholfen hat, wäre es eine sehr nette Anerkennung meiner Arbeit wenn Sie z.B. Ihre Bücher über Amazon bestellen würden. Wenn Sie ein Produkt kaufen, erhalte ich dafür eine Provision. Für Sie ändert sich am Preis des Produktes gar nichts. Ich möchte mich an dieser Stelle jetzt schon für Ihre Unterstützung bedanken.

Denis Reis ist Business Intelligence Consultant und gibt als Buchautor sein Wissen rund um den SAP Projektalltag weiter. Wenn Sie tatkräftige Unterstützung bei Ihren SAP BI Projekten benötigen, können Sie ihn über Xing, LinkedIn oder Facebook kontaktieren.
Des Weiteren unterrichtet er Projektmanagement und Controlling an der Wiesbaden Business School. Der aus Düsseldorf stammende Familienmensch zählt zu denjenigen, die auf komplizierte Darstellungen verzichten und das Ganze auf den Punkt bringen.

0 Kommentare

Dein Kommentar

Want to join the discussion?
Feel free to contribute!

Kommentar verfassen