Hallo zusammen! Ich bin gerade dabei meine Java Kentnisse von Grund auf zu verbessern, deswegen arbeite ich grad an einem Java-Tutorial(http://www.gailer-net.de/tutorials/java/Notes/chap26/progExercises26.html). Hierbei ist folgendes Verständnisproblem aufgetreten:
// Hier, die Aufgabe:
Aufgabe 1 — Der == - Operator
Erstellen Sie eine Klasse LiteralTester und deklarieren Sie vier Stringvariablen str1, str2, str3 und str4. Erzeugen Sie dann ein Stringliteral "Bo, die Katze" und weisen Sie dieses Stringliteral den beiden Referenzvariablen str1 und str2 zu. Erzeugen Sie danach für die beiden Referenzvariablen str3 und str4 mit dem new-Operator jeweils ein Stringobjekt mit dem Inhalt "Fred, der Hund".
Überprüfen Sie anschließend mit dem == -Operator, ob die Referenzvariablen str1 und str2 auf dasselbe Objekt verweisen. Überprüfen Sie ebenfalls mit dem == -Operator, ob die Referenzvariablen str3 und str4 auf dasselbe Objekt verweisen.
Ermitteln Sie die Anzahl der Stringobjekte und geben Sie das Ergebnis auf den Bildschirm aus. Die Ausgabe des Programms sieht dann folgendermaßen aus.
1.) Ist mit der Zuweisung des Stringliteral das gemeint?
2.) Soll ich den Stringliteral direkt mit der Referenzvariable str2 vergleichen, oder soll ich die beiden Referennzvariablen mit einander vergleichen(was doch irgenwie keinen Sinn macht oder?)?
Bis jetzt hab ichs so gemacht:
Und 3.) Gibt es eine "Standard-Methode" wie z.B. aaa.lenght() um zu zählen wie viele Objekte ich erstellt habe oder würdet ihr das irgenwie per inkrement machen?
Danke im Voraus für eure Antworten!
// Hier, die Aufgabe:
Aufgabe 1 — Der == - Operator
Erstellen Sie eine Klasse LiteralTester und deklarieren Sie vier Stringvariablen str1, str2, str3 und str4. Erzeugen Sie dann ein Stringliteral "Bo, die Katze" und weisen Sie dieses Stringliteral den beiden Referenzvariablen str1 und str2 zu. Erzeugen Sie danach für die beiden Referenzvariablen str3 und str4 mit dem new-Operator jeweils ein Stringobjekt mit dem Inhalt "Fred, der Hund".
Überprüfen Sie anschließend mit dem == -Operator, ob die Referenzvariablen str1 und str2 auf dasselbe Objekt verweisen. Überprüfen Sie ebenfalls mit dem == -Operator, ob die Referenzvariablen str3 und str4 auf dasselbe Objekt verweisen.
Ermitteln Sie die Anzahl der Stringobjekte und geben Sie das Ergebnis auf den Bildschirm aus. Die Ausgabe des Programms sieht dann folgendermaßen aus.
1.) Ist mit der Zuweisung des Stringliteral das gemeint?
Java:
public static void main(String[]args){
LiteralTester str1 = new LiteralTester();
LiteralTester str2 = new LiteralTester();
str1.strliteral= "Bo,die Katze";
str2.strliteral= "Bo,die Katze";
2.) Soll ich den Stringliteral direkt mit der Referenzvariable str2 vergleichen, oder soll ich die beiden Referennzvariablen mit einander vergleichen(was doch irgenwie keinen Sinn macht oder?)?
Bis jetzt hab ichs so gemacht:
Java:
if(str1.strliteral==str2.strliteral){
System.out.println("gleich");
if(str3.strliteral==str4.strliteral){
System.out.println("auch gleich");
}else{
System.out.println("nicht gleich");
}
}else{
System.out.println("nicht gleich");
}
Und 3.) Gibt es eine "Standard-Methode" wie z.B. aaa.lenght() um zu zählen wie viele Objekte ich erstellt habe oder würdet ihr das irgenwie per inkrement machen?
Danke im Voraus für eure Antworten!