Thema in Kurzform
Eine Variable ist eine Art "Box", in der wir ganz unterschiedliche Daten speichern können. Technisch gesprochen ist eine Variable ein Bezeichner für ein Stück Speicher, das Daten speichert.
// Code in Kurzform
int zahl;
zahl = 7;
Wir stellen uns eine Variable - und dies gilt für alle Programmiersprachen - als eine Art Behältnis oder Box vor. Solch eine Box ist dafür da, damit wir ganz unterschiedliche Daten darin speichern können. Technisch gesprochen ist eine Variable ein Name für ein Stück Speicher, das Daten speichert. Solche Daten können z.B. primitive Datentypen wie Zahlen, Zeichen, boolesche Wahrheitswerte oder auch Objekttypen wie Strings (Zeichenketten) sein:
Für die Nutzung von Variablen müssen wir bestimmte Regeln einhalten, wenn wir keinen Compiler-Fehler erzeugen wollen. Diese Regeln werden wir im Verlauf dieses Kapitels näher kennen lernen:
Genug Theorie. Lassen Sie uns nun ein paar Variablen erstellen:
package paket1;
public class ErsteKlasse {
public static void main(String[] args) {
String zooName;
int anzahlTiere;
}
}
Wir schreiben nur in diesem ersten Beispiel den vollständigen Klassen-Code mit dazu. In den nächsten Beispielen und Erklärungen lassen wir diesen weg, um unseren Fokus auf das zu legen, was wir erklären wollen.
Wir erstellen innerhalb der Main-Methode zwei Variablen. Die erste mit dem Namen zooName speichert Daten vom Typ String (Zeichenkette). Die zweite Variable haben wir anzahlTiere genannt und diese speichert Daten vom Typ int (ganze Zahlen). Der Fachbegriff für das Erstellen einer Variablen lautet Deklarieren – und das trifft die Sache auch genauer, da wir Java mitteilen bzw. bekannt machen, dass eine Variable von nun an existiert.
Schön und gut. Es wurden nun also zwei Variablen deklariert. Allerdings haben diese von uns noch keinen Wert zugewiesen bekommen. Die Wertzuweisung an eine Variable nennt man Initialisierung. Das Initialisieren einer Variablen ist einfach: Wir schreiben hinter die Variable mit dem Zuweisungsoperator = einfach den gewünschten Wert:
zooName = "Berliner Zoo";
anzahlTiere = 20000;
Es gibt vier Vorschriften, wie Variablen heißen dürfen. Prägen Sie sich diese Vorschriften gut ein, denn gerade für Programmieranfänger ist dies oftmals eine Fehlerquelle.
Merken Sie sich: Java ist case-sensitive, das heißt, es macht einen Unterschied, ob man etwas groß oder klein schreibt. Sie dürfen also eine Variable durchaus Private nennen. Denn das ist nicht dasselbe wie private. Sie sollten so etwas aber trotzdem nicht tun, denn es gilt als schlechter Stil, Variablen-Namen groß zu schreiben.
Es kann sehr praktisch sein, in einem einzigen Schritt (d.h. in einer Anweisung gleich mehrere Variablen zu erzeugen. Wir können das als eine Art Abkürzung verstehen. Schauen Sie sich das mal an:
int i1, i2, i3;
i1 = 10;
i2 = 20;
i3 = 30;
In der ersten Anweisung in Zeile 1 wurden drei Integer-Variablen in einem Schritt deklariert und erst in den folgenden Zeilen 2-4 (in einer anderen Anweisungen also) haben wie ihnen die Werte zugewiesen (=initialisieren).
Wir können sogar noch weitergehen und sowohl Deklaration als auch Initialisierung in einer einzigen Anweisung durchführen:
int i1 = 10, i2 = 20, i3 = 30;
Kürzer geht's nicht. Wir können so tatsächlich etwas Code einsparen und den Schreibaufwand reduzieren. Aber wir sollten es mit so etwas nicht übertreiben, da wir sonst die Lesbarkeit unseres Codes negativ beeinträchtigen.
Es ist übrigens auch problemlos möglich, nur einen Teil der in der Anweisung deklarierten Variablen in der selben Anweisung auch zu initialisieren:
String s1, s2 = "Hallo", s3;
In diesem Beispiel haben wir in der Anweisung drei String-Variablen deklariert, aber nur die zweite Variable s2 hat auch einen Wert zugewiesen bekommen.
Zusammengefasst heißt das also: In einer Anweisung können mehrere Variablen deklariert und beliebig viele davon initialisiert werden.
Beim Deklarieren und Initialisieren in nur einer Anweisung, müssen wir zwei Regeln einhalten, sonst schrotten wir den Code:
Beispiel:
//Fehler: verschiedene Datentypen:
String wort1, boolean wahrheitswert1;
//Fehler: Datentyp 2x genannt:
int x1, int x2;
Java Basics
[Java einrichten] [Variablen] [Primitive Datentypen] [Operatoren] [if else] [switch-case] [Arrays] [Schleifen]
Objektorientierung
[Einstieg] [Variablen ] [Konstruktor] [Methoden] [Rekursion] [Statische Member] [Initializer] [Pass-by-value] [Objektsammlungen] [Objektinteraktion] [Objekte löschen]
Klassenbibliothek
[Allgemeines] [String ] [Math] [Wrapper] [Scanner] [java.util.Arrays] [Date-Time-API]
Vererbung
[Einstieg Vererbung] [Konstruktoren bei Vererbung ] [Der protected Zugriffsmodifikator] [Abstrakte Klassen und Methoden] [Polymorphie in Java] [Typumwandlung] [Die Klasse Object] [Die toString()-Methode] [Objekte vergleichen] [Was ist ein Interface?]