Was ist objektorientierte Programmierung (OOP)?

Nachdem wir uns im Kurs Basics mit den Grundlagen von Java vertraut gemacht haben wollen wir uns nun an das Konzept der objektorientierten Programmierung wagen. Dieses reduziert die Komplexität eines Programms und erhöht die Wiederverwendbarkeit.

In der objektorientierten Programmierung besteht ein Programm aus verschiedenen Objekten, welche zueinander in einer definierten Beziehung stehen – also ähnlich wie in der realen Welt.

Die Klasse ist der Bauplan und das Objekt ist das danach gebaute Haus.

Was ist eine Klasse?

Eine Klasse kann man sich am besten als eine Art Bauplan vorstellen. Dieser Plan definert wie ein aus der Klasse erstelltes Objekt auszusehen hat. Die Klasse wird mit dem Schlüsselwort class definiert, dies wissen wir bereits aus dem Beitrag zum Aufbau eines Java-Programms. Eine Klasse kann über Attribute und Methoden verfügen, diese werden als statisch bezeichnet – daher auch das Schlüsselwort static bei der Main-Methode.

Was ist ein Objekt?

Anhand des Bauplans der Klasse können wir ein Objekt erstellen. Ein Objekt ist dabei eine konkrete Implementierung einer Klasse, welches auch wieder Attribute und Methoden besitzen kann. Der „Bau“ eines Objekts anhand einer Klasse wird auch instanziieren genannt und wird durch das Schlüsselwort new eingeleitet.

Beispiel

Stellen wir uns die Klasse Mitarbeiter vor und legen fest, dass ein Mitarbeiter über folgende Eigenschaften (Attribute) definiert wird:

Dies können wir in Java wie folgt umsetzen:

public class Mitarbeiter {

    // Attribute
    int personalnummer;
    String name, vorname, abteilung;
    
}

In dieser Klasse können wir nun eine statische Main-Methode definieren, in welcher wir uns einen neuen Mitarbeiter als Objekt anlegen.

    public static void main(String[] args) {

        // Neuen Mitarbeiter instanziieren
        Mitarbeiter mitarbeiter1 = new Mitarbeiter();
        System.out.println(mitarbeiter1);

    }

Wir legen also eine Variable mit dem Namen mitarbeiter1 an, die Variable hat als Datentyp unsere eigenerstellte Klasse Mitarbeiter. Wird die main-Methode ausgeführt, erhalten wir folgende Ausgabe:

Mitarbeiter@77459877

Diese Ausgabe bedeutet:

  • Mitarbeiter => Name der Klasse
  • 77459877 => Hashwert des Objekts (dein Hashwert wird anders lauten)

Im nächsten Beitrag belegen wir die Attribute des Mitarbeiters dann mit den konkreten Werten.

Schreibe einen Kommentar