Skip to main content

Java Übung 12 – Erstelle Java Objekte mit mehreren Verweisen

In dieser Java Übung geht es um Objekte und es geht um Referenzvariablen.
Es geht um den Zugriff auf Java Objekte durch mehr als eine Referenzvariable.

Erstelle dazu eine Java Klasse, namens „ReferenzTest“.
Dieser Klasse führt drei Instanzvariablen a, b und c, vom Datentyp Integer.

In dieser Klasse implementierst du bitte eine main-Methode.
Zum Programmstart erzeuge bitte ein Objekt und drei Referenzen, welche auf das Objekt verweisen.

Jede Referenz soll per Punktnotation auf jeweils eine Variable zugreifen und deren Wert festlegen.
A = 2,
B = 16,
C = -32;

Zur Kontrolle – Lass dir die Werte der Instanzvariablen für „refEins“ als Bildschirmausgabe anzeigen.


Um diese Java Übung zu lösen, müssen wir den Unterschied zwischen dem Objekt und der Variable klären

Mit Variable meine ich nicht die Instanzvariable.
Ich meine die Referenzvariable.

Der Code um ein Java Objekt anzulegen, würde so aussehen:


public class ReferenzTest {
int a;
int b;
int c;
 
public static void main(String[] args) {
ReferenzTest refEIns = new ReferenzTest(); // Anweisung um ein neues Java Objekt anzulegen
}
}

Im Schritt-für-Schritt-Modus bedeutet diese Anweisung:

  • ReferenzTest – Name des Datentyps, welcher für die Referenzvariable reserviert wird
  • refEins- Name der Referenzvariablen. Diese Referenzvariable stellt einen Zeiger bzw. einen Verweis auf das Objekt dar.
  • Gleichheitszeichen- Zuweisung der Variablen
  • Keywort new- Signalisiert, dass ein neues Objekt erstellt werden soll
  • ReferenzTest ()- genau dieser Konstruktor soll verwendet werden, um das Objekt zu erstellen. Da in dieser Klasse kein eindeutiger Konstruktor angelegt wurde, verwendet das Java Programm den Default-Konstruktor, welcher jeder Klasse automatisch zur Verfügung steht.

Dies bedeutet, dass alles was links vom Gleichheitszeichen steht, etwas mit der Referenzvariable zu tun hat.
Und alles was rechts steht, hat etwas mit der Objekterstellung zu tun.

Also dann lass uns weitere Referenzvariablen für das Java Objekt anlegen.


public class ReferenzTest {
int a;
int b;
int c;
 
public static void main(String[] args) {
ReferenzTest refEins = new ReferenzTest(); //Java Objekt anlegen
ReferenzTest refZwei = refEins; //zweiter Verweis
ReferenzTest refDrei = refEins; //dritter Verweis
}
}

Die Referenzvariablen „refZwei“ und „refDrei“ erhalten den selben Verweis, welcher auch in „refEins“ gespeichert wurde.

Jetzt kann die Wertzuweisung der Instanzvariablen geschehen.


public class ReferenzTest {
int a;
int b;
int c;
 
public static void main(String[] args) {
ReferenzTest refEins = new ReferenzTest(); //Java Objekt anlegen
ReferenzTest refZwei = refEins; //zweiter Verweis
ReferenzTest refDrei = refEins; //dritter Verweis
 
refEins.a=2; //Zuweisung 
refZwei.b=16; 
refDrei.c=-32;
 
System.out.println(refEins.a+" "+refEins.b+" "+refEins.c);
}
}

Du siehst alle drei Referenzvariablen verweisen auf das gleiche Objekt.


Ähnliche Beiträge

Java lernen – 10 nützliche Tipps für Java Anfänger

Java Lernen Anfänger

Wenn du die Programmiersprache Java lernen möchtest, bist du hier prinzipiell erst einmal richtig. Und wenn du es wirklich ernst meinst und in die Java Programmierung einsteigen möchtest, solltest du auch meinen kostenlosen Java Kurs beanspruchen. Wenn du dabei bist, bekommst du: Eine Lektion pro Woche zu den Basics. Hier geht es um die ersten […]

Das Java Vererbung Konzept in einem Rollenspiel

Java ist eine objektorientierte Programmiersprache. Und das bedeutet nicht nur, dass du Objekte einer Java Klasse erzeugen kannst. Es bedeutet auch, dass Java Klassen von anderen Klassen erben können. Wieso das Ganze? Stell dir einmal ein Rollenspiel vor. Wie würdest du ein Rollenspiel entwerfen? In einem Rollenspiel gibt es magische Gegenstände. Zauberringe, Zauberstäbe, welche bei […]

Den Java Vererbungsbaum nach dem Ist-Es-Prinzip richtig entwerfen

Java Vererbungsbaum

Vererbungsbaum in Java – klingt erstmal komisch. Dennoch wird dies so bezeichnet. Gemeint sind damit – die einzelnen Hierarchiestufen oder Vererbungsebenen – von der Superklasse bis runter zu den Kindklassen. Wie sieht das nun konkret aus? Vererbung bedeutet: Du definierst einen allgemeinen Typen – zB. Möbel Und dann implementierst du eine Unterklasse, welche die Oberklasse […]

Die drei Bestandteile aller Java Klassen

Java Klassen Bestandteile

Java ist eine objektorientierte Programmiersprache. Was heißt das? Ja… Anscheinend hat es etwas mit Objekten zu tun. Also was ist ein Objekt? Ein Objekt ist ein bestimmtes Konstrukt im Programm. Bauen wir ein Spiel. Ein Grafik-Adventure. Du kennst das. Ein Held wird in eine bestimmte Spielwelt hinein gesteckt. Der Held muss mit bestimmten Personen sprechen. […]

Java Vererbung:
Die 3 Schablonen für deine Java Objekte

Java Vererbung Beispiel

Im letzten Beitrag habe ich dir das Java Vererbung Konzept an einem Beispiel vorgestellt. In dem Beispiel-Rollenspiel gab es Klassen zu Helden und Superhelden. Ich habe dir die Vererbungshierarchien theoretisch erläutert. Jetzt geht es ans Praktische. In diesen Beitrag lernst du: Wie du bestehende Java Klassen erweiterst Wie du Objekte aus den erweiterten Klassen erstellen […]

10 ganz nützlichen Feature der Klasse Java Math

In diesem Beitrag geht es um eine spezielle Java Klasse. Die Klasse nennt sich Java Math. Diese ist in der Standardbibliothek von Java enthalten. Warum solltest du diese Klasse kennen? Die Math Klasse bietet dir einen Menge Methoden an, welche zur Berechnung von mathematischen Gleichungen ganz hilfreich sind. Aber auch für Nichtmathematiker ist etwas dabei. […]

Java Übung 19 – Zähle die Kommastellen

Java Übung Kommastellen Zählen

In dieser Java Übung möchte ich, dass du eine Methode zum Zählen von Kommastellen schreibst. Lege dazu eine Klasse „KommaZahl“ an. Diese Klasse enthält die statische Methode „zaehleKommaStellen“, welche eine Kommazahl als übergebenen Parameter erwartet.

3 Möglichkeiten um Vererbung von Java Klassen zu verhindern, zu verbieten oder ausschließen

Java Vererbung verhindern

Die ganze Java Vererbung für bestimmte Klassen ausschließen bzw. verhindern oder verbieten. Was soll das? Für bestimmte Java Klassen soll die Vererbung ausgeschlossen werden. Es soll also verhindert werden, dass Elternklassen – Kindklassen bekommen können. Klingt ein bisschen wie Verhütung, oder? Denn wie auch im echten Leben, können Kinder zu kleinen Tyrannen werden. Sie bedienen […]

So legst du Utility Klassen in Java an

Java Utility Klassen

Utility Java Klassen – was ist das? Man nennt diese auch Hilfsklassen von Java. Diese Utility Klassen sind Java Klassen, welche lediglich Methoden und Konstanten anbieten. Am Beispiel: Die Klasse Math ist so eine klassische Utility Klasse. Wozu braucht man solche Klassen? Diese Klassen sind so etwas wie ein Werkzeugkoffer für jedes Java Programm. Hier […]