Was ist eine objektorientierte Programmiersprache

Eine objektorientierte Programmiersprache vertritt eine
Denkschule, die versucht, durch das Motto "Alles ist ein Objekt"
möglichst nahe an die Denkweise des Menschen heranzukommen, um
die Erstellung von Software zu erleichtern.

Um eine Software objektorientiert zu erstellen, untersucht man, welche
Objekte der Realität als Bestandteil der Software widergespiegelt
werden sollen. So findet man z.B. in einem Autoverleih die Objekte
„Mietwagen“, „Bearbeiter“, „Kunde“, „Personalausweis“, „Kreditkarte“,
„Fuehrerschein“.

Eine objektorientierte Verwaltungssoftware für den Autoverleih nimmt
dann diese realen Objekte zum Vorbild und bildet die für die Anwendung
relevanten Daten (z.B. Kundenname, Personalausweisnummer und
Geburtsdatum) sowie das Verhalten dieser Objekte (z.B. Bearbeiter
reserviert Mietwagen für Kunden) in der Software ab.

Ein Software-Objekt besteht demnach aus seinen beschreibenden Daten
( Attributen ) und dem möglichen Verhalten ( Methoden ), welches wiederum
von anderen Objekten ausgelöst werden kann ( Objektkommunikation ).

Zur Illustration ein Code-Ausschnitt in Java:

// Objekte erstellen und Attribute initialisieren:
Kunde kunde = new Kunde("Hans Meier", "22.12.1956");
Bearbeiter bearbeiter = new Bearbeiter("Theobald Schneider");
Mietwagen porsche911 = new Mietwagen("Porsche911");

// Objekte miteinander kommunizieren lassen, also Methoden der Objekte aufrufen:
boolean blnSindPersonalienOK = bearbeiter.pruefePersonalausweis(kunde.gibPersonalausweis());
boolean blnIstFuehrerscheinOK = bearbeiter.pruefeFuehrerschein (kunde.gibFuehrerschein());
boolean blnIstBonitatetOK = bearbeiter.pruefeBonitaet (kunde.gibKreditkarte());

// Reservierung vornehmen, falls Kundendaten OK sind:
if (blnSindPersonalienOK && blnIstFuehrerscheinOK && blnIstBonitatetOK) {
 bearbeiter.reserviereMietwagen(porsche911);
} else {
 // erkläre dem Kunden freundlich, dass das mit dem Porsche nichts wird
 // und beende die Unterhaltung
}