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

Du musst in Java nicht jede Exception fangen

Java Exception fangen

Kennst du die Metapher mit dem Jongleur und den Bällen? Ein Jongleur hält drei Bälle in der Luft, dann vier und irgendwann fünf. Aber irgendwann ist es genau ein Ball zu viel. Und Alles bricht zusammen. Ja ein Ball zu viel, kann alles versauen. 🙂 Und so ist es doch immer im Leben. Du kannst […]

Beim Aufruf werden Java Methoden auf dem Stack gestapelt

Java Methoden gestapelt

Java Methoden werden beim Aufruf gestapelt. Und jedes Element auf dem Stapel nimmt Speicherplatz weg. Und manchmal ist es so, dass der Stapel richtig hoch wird und dann…. Ja was passiert eigentlich dann? Betrachten wir einmal ein Computerspiel. Irgendeines. In diesem Computerspiel gibt es Vögel, welche abgeschossen werden sollen. Was bedeutet das denn genau? Beim […]

Java Übung 24 – So kannst du Kommazahlen runden

Java Übung runden

In dieser Java Übung möchte ich mit dir Zahlen runden. Ich bitte dich deshalb: Erstelle eine Klasse „RundenUebung“. Lege dann eine statische Methode rundeZahl() an. Diese erwartet zwei Parameter. Parameter 1 ist die Kommazahl, welche gerundet werden soll. Als zweiten Parameter wird eine ganze Zahl übergeben, welche die Nachkommastelle – bis auf welche letztlich gerundet […]

Polymorphie bringt Vorteile für Java Arrays

Java Polymorphie Arrays

Wenn Java Arrays, Schubladen oder Container sein sollen… Dann wäre der Gebrauch einer solchen Schublade ziemlich einseitig und festgefahren. Denn in jedes Array passen zwar mehrere Daten – aber immer nur vom gleichen Datentyp. Immer gleicher Datentyp? Also eine Schublade nur für Socken, Unterwäsche und der ganze andere Kram passt dann eben nicht hinein. Um […]

So kannst du in den Java Klassen Attribute anlegen

Java Klassen Attribute

Die bisherigen Java Klassen in unserem Einführungsbeispiel besitzen noch keine Attribute. Das ändern wir und legen diese jetzt an. In diesem Beitrag erfährst du: Warum Variablen in deinen Klassen eine entscheidende Rolle spielen. Was es bedeutet eine Variable zu deklarieren. Wo du Attribute in den Java Klassen anlegen darfst und wo nicht. Wie du durch […]

So verwendest du Inkrement und Dekrement Operatoren in deinen Java Programmen

Java Operatoren

In diesem Beitrag geht es um Java Operatoren. Ich möchte dir gern zwei neue Operatoren vorstellen. Diese nennen sich Inkrement und Dekrement. Ja was heißt das? Inkrementieren bedeutet eine schrittweise Erhöhung einer Zahl. Und dementsprechend bedeutet Dekrementieren: Die schrittweise Verminderung einer Zahl. Wozu brauchst du das? Stell dir vor. Du bekommst eine Liste mit Namen […]

So kannst du Java installieren

Java installieren

Bevor du loslegst und deine ersten Java Programme schreibst, benötigst du die entsprechende Arbeitsumgebung. Du solltest also Java installieren. Und diese Arbeitsumgebung beinhaltet dann Bibliotheken für die einzelnen Java-Standard-Klassen, Dateien um deine Programme auszuführen. Dateien um deine Programme zu packen, Logische Verzeichnisstrukturen

Heap & Stack – Die Speicherverwaltung in Java

Java Speicher

Java nutzt eine interne Speicherverwaltung. Eigentlich sind es mehrere. Uns interessieren lediglich zwei. Da das Thema Speicherverwaltung recht umfangreich ist, habe ich dir im Folgenden einmal die wichtigsten Artikel zusammengestellt. Die zwei Speichersysteme von Java Java Methoden werden auf dem Stack gestapelt. Der Speicher auf dem Java Methoden zu Hause sind, nennt sich Stack Speicher. […]

Ende vom Java Blog?

Falls du hier schon länger dabei bist, wird dir aufgefallen sein – dass kaum noch Beiträge veröffentlicht werden. Das tut mir wirklich leid und dafür möchte ich mich auch entschuldigen. Ich weiß, dass Einige unter Euch den Java-Blog wirklich lieben. Aber es ist verdammt schwierig so ein aufwendiges Thema – stilvoll, unterhaltend und methodisch umzusetzen. […]

Java Übung 25 – Simuliere eine Gelddruckmaschine

Java Übung Gelddruckmaschine

In dieser Java Übung geht es um Schleifen. Und zwar möchte ich, dass du eine virtuelle Geldruckmaschine erstellst. Was meine ich damit? Du gibst in der Konsole einen x-beliebigen Betrag ein und das Programm gibt dir virtuelle Geldscheine zurück. Ein Beispiel: Du gibst die Zahl 400 ein. Dann liefert dir das Programm 2 x 200 […]

3 Möglichkeiten – Java Strings verketten und zusammenfügen

Java Strings verketten

Kennst du dieses Relikt längst vergangener Tage? Ein Brief. Ja früher einmal war es üblich, Briefe zu schreiben. Lange bevor es Smartphones oder Email gab. Man stelle sich einmal vor…. Die Leute mussten sich hinsetzen mit einem Blatt und einem Stift – und richtig schreiben. Nein nicht tippen – schreiben. 🙂 Grausame Welt, oder? Aber […]