„Vor langer Zeit konnten Computer nur Text anzeigen. Programme zeigten Daten auf dem Bildschirm an, nachdem sie Eingaben über die Tastatur erhalten hatten. Das wird als ‚Konsolen-Benutzeroberfläche‘ oder einfach als ‚Konsole‘ bezeichnet. Eine Fensteroberfläche ist eine Alternative zur Konsole. Bei dieser Art von Benutzeroberfläche interagiert der Benutzer mit dem Programm über ein oder mehrere Fenster. Da wir gerade erst lernen, wie man programmiert, beginnen wir mit der Arbeit mit der Konsole.“

„In Ordnung.“

„Text wird auf der Konsole (Bildschirm) nacheinander, Zeile für Zeile, angezeigt. Der Text wird über die Tastatur eingegeben. Damit man keine Fehler macht, wird die Tastatureingabe auf dem Bildschirm angezeigt. Manchmal sieht es so aus, als würden der menschliche Benutzer und das Programm abwechselnd Dinge auf den Bildschirm schreiben.

„Mit der Methode System.out.print() kannst du Text auf dem Bildschirm anzeigen. Diese Methode zeigt einfach den Text an, während System.out.println() den Text anzeigt und den Cursor in die nächste Zeile bewegt.“

Code Ergebnis
System.out.print("Rain");
System.out.print("In");
System.out.print("Spain");
RegenInRegensburg
System.out.print("Rain");
System.out.println("In");
System.out.print("Spain");
RegenIn
Regensburg
System.out.println("Rain");
System.out.println("In");
System.out.println("Spain");
Regen
In
Regensburg

„Wenn wir Textteile voneinander trennen möchten, müssen wir ein Leerzeichen hinzufügen. Zum Beispiel:“

Code Ergebnis
int a = 5, b = 6;
System.out.print(a);
System.out.print(b);
56
int a = 5, b = 6;
System.out.print(" " + a + " " + b);
 5 6
int a = 5, b = 6;
System.out.print("The sum is " + (a + b));
The sum is 11

„Alles klar.“

„So kannst du alles auf dem Bildschirm anzeigen: Alle Java-Objekte können in eine Zeichenkette umgewandelt werden. Alle Java-Klassen stammen von der Objektklasse ab, die die Methode toString() besitzt. Diese Methode wird aufgerufen, wenn du ein Objekt in eine Zeichenkette umwandeln willst.“

Code Beschreibung
Cat cat = new Cat("Oscar");
System.out.println("The cat is " + cat);
Diese drei Beispiele sind gleichwertig.
Cat cat = new Cat("Oscar");
System.out.println("The cat is " + cat.toString());
Cat cat = new Cat("Oscar");
String catText = cat.toString();
System.out.println("The cat is " + catText);

„Aber mein Programm hat Folgendes angezeigt: ‚Die Katze ist com.codegym.lesson3.Cat@1fb8ee3‘. Was in aller Welt soll das bedeuten?“

„Die Standardmethode toString() der Objektklasse gibt eine Zeichenkette zurück, die aus dem Klassennamen und der Speicheradresse des Objekts (in hexadezimaler Form) besteht.“

„Aha. Und was soll eine solche Methode bringen?“

„Du kannst deine eigene Implementierung von toString() in deine Klasse schreiben. Dann wird diese Methode aufgerufen.“

„Wirklich? Okay.“

„Hier ein paar Aufgaben von Diego.“