Objektorientierung in Java

Einstieg in die Objektorientierung in Java

Die Objektorientierung ist ein theoretisches Konzept in Java. Es beschreibt die Modellierung der Realität durch Objekte und deren Zusammenspiel. So kann ein reales komplexes System virtualisiert werden.


Erklärung

Während viele Java-Programme mit einer Klasse auskommen, reicht für komplexere Systeme eine Datei oft nicht mehr aus. Eine Java-Klasse, welche z.B. die simpleclub-App implementiert, hätte mehrere 100.000 Zeilen an Programmcode und wäre damit nicht nur viel zu komplex, sondern auch unmöglich zu programmieren.

Von der Realität zum Objekt

Zum Glück gibt es die objektorientierte Programmierung. Statt alles in eine einzige Datei zu schreiben, werden bei der Objektorientierung mehrere Klassen erstellt, welche reale Objekte abstrakt abbilden.

Um dieses Konzept zu verstehen, stell dir Folgendes vor: Jan ist zu Besuch auf einen Bauernhof. Auf diesem gibt es allerlei Dinge: ein großes Wohnhaus, den Hofhund, eine Scheune, Kühe, Pferde und so weiter.

Wenn Jan den Bauernhof in Java implementieren möchte, kann er dies durch die Objektorientierung leicht umsetzen. Jedes dieser Dinge (das Wohnhaus, die Kuh, der Hund oder die Scheune) stellt in Java ein Objekt dar.

Jedes dieser Objekte hat dabei einzigartige Eigenschaften, welche dieses Objekt kennzeichnen. Der Hofhund hat einen Namen, ein Alter und eine Größe.

Das Wohnhaus hat auch eine Größe, welche jedoch nicht die gleiche Größe wie die des Hundes ist. Stattdessen hat es eine Länge, Breite, Höhe, Farbe, Anzahl an Fenstern und viele weitere Eigenschaften.

Welche Eigenschaften du in Java implementierst, ist immer davon abhängig, welche du für dein Programm benötigst. Die Eigenschaften werden später als Klassenattribute übertragen.

Zusammenspiel von Objekten

Da du im ersten Schritt alle Dinge in virtuelle Objekte übertragen hast, müssen diese Objekte nun noch zusammen arbeiten. Einzeln für sich genommen würde nämlich keines der Objekte funktionieren. Nur gemeinsam bilden die Objekte und ihr Zusammenspiel ein funktionelles Programm.

Objekte als Instanzen von Klassen

Wichtig ist dabei der Unterschied zwischen Objekten und Klassen.

Klassen sind von dir im Rahmen der Objektorientierung modellierte Elemente. Eine Klasse ist also das, was du innerhalb der Entwicklungsumgebung erstellst und mit Methoden, Klassen-Variablen, usw. befüllst.

Wird dein Programm ausgeführt und du erstellst eine Instanz einer Klasse, so wird diese Instanz ein Objekt genannt. Objekte werden also erst erstellt, wenn dein Programm ausgeführt wird. Auf Objekten können dann Methoden aufgerufen werden.

Kuh Klasse visualisert als Stempel, welcher als Blaupause für die Kuh Objekte dient

Eine Klasse ist also die theoretische Blaupause, welche du in Java-Code implementierst.

Objekte sind Instanzen von Klassen, die während der Laufzeit des Programms erstellt werden.

Aus einer Klasse können demnach mehrere verschiedene Objekte erstellt werden!


Beispiel

Betrachte folgende Situation: Jan steht immer noch auf dem Bauernhof. Es gibt dort ein großes Wohnhaus, den Hofhund, eine Scheune, mehrere Kühe, Pferde und so weiter.

Ein möglicher Ansatz für die Objektorientierung wäre dann, diese Situation durch folgende Klassen abzubilden:

  • Hund
  • Pferd
  • Gebäude
  • Person

Weiter wäre eine genauere objektorientierte Umsetzung von Jan durch die Person-Klasse möglich. Die Person-Klasse müsste dann folgende Attribute haben:

  • Name
  • Alter
  • Beruf
  • Größe

Jan besitzt jedoch nicht nur Eigenschaften, sondern kann auch einiges. Objekte erhalten Funktionalität durch Methoden, die die Klassen besitzen. Mögliche Methoden für Jan wären zum Beispiel:

  • Essen
  • Schlafen
  • Lernen
  • Sprechen
  • Altern

Diese theoretischen Überlegungen zur Objektorientierung müssen im Vorfeld der Programmierung erfolgen und bestimmen, wie das spätere Java-Programm aufgebaut wird. Es ist daher besonders wichtig, sich vorab klar zu machen, welche Klassen benötigt werden, welche Klassen-Attribute es geben soll und welche Funktionalitäten (sprich Methoden) die einzelnen Objekte benötigen.

No items found.

simpleclub ist am besten in der App.

Mit unserer App hast du immer und überall Zugriff auf: Lernvideos, Erklärungen mit interaktiven Animationen, Übungsaufgaben, Karteikarten, individuelle Lernpläne uvm.

Jetzt simpleclub Azubi holen!

Mit simpleclub Azubi bekommst du Vollzugang zur App: Wir bereiten dich in deiner Ausbildung optimal auf deine Prüfungen in der Berufsschule vor. Von Ausbilder*innen empfohlen.

Jetzt simpleclub Azubi holen