# Java Variables: Deklaration, Initialisierung, Typen und Beispiele

Java Variables sind Container, die bestimmte [Java-Datentypen](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-data-types/) speichern können. Sie lassen sich in lokale Variablen, Instanzvariablen und statische Variablen unterteilen. Während die Größe einer Variablen in Java nachträglich nicht geändert werden kann, können Sie ihren Inhalt auch zu einem späteren Zeitpunkt noch anpassen.

## Was genau sind Java Variables?

In jeder Programmiersprache gibt es Variablen, die genutzt werden, um innerhalb eines Codes und damit eines Programms zu arbeiten. Es handelt sich dabei genau genommen um **Container, in denen bestimmte Daten eines Typs – und nur dieses Typs – gespeichert werden**. In Java können Variablen einerseits [primitive Java-Datentypen](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-primitives/) wie Ganzzahlen, Kommazahlen, Wahrheitswerte (true und false) oder einzelne Ziffern speichern. Andererseits ist auch die Speicherung von komplexen Datentypen wie [Java Strings](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-strings/) möglich. Java Variables haben eine bestimmte, klar definierte Größe, die nachträglich nicht geändert werden kann. Ihr Inhalt jedoch lässt sich auch später noch bearbeiten. Im Folgenden zeigen wir Ihnen die einzelnen Variablen mit Beispielen.

## Java var deklarieren und initialisieren

Doch zunächst zeigen wir, wie in Java Variablen überhaupt deklariert und später initialisiert werden. Dieser Vorgang ist nämlich bei allen Typen gleich. Für die **Deklaration** benötigen Sie **zwei Parameter**: zuerst den Datentyp, der in dieser Variablen gespeichert werden soll; dann den Namen der Java-Variablen.

Für die nachfolgende **Initialisierung** sind **drei Faktoren** wichtig: Neben dem Datentyp und dem Namen der Variablen benötigen Sie einen Wert. Mit der Initialisierung weisen Sie also der bisher leeren Variablen einen Wert zu. Die Syntax sieht somit folgendermaßen aus:

```java
Datentyp Name = Wert;
```

## Die drei Variablentypen in Java

Java Variables können in drei verschiedene Kategorien unterteilt werden: lokale Variablen, Instanzvariablen und statische Variablen.

### Lokale Variablen

Wird eine Java var **im Hauptteil deklariert**, spricht man von einer lokalen Variablen. Sie kann nur innerhalb einer Methode, eines Constructors oder eines Blocks genutzt werden. Im folgenden Beispiel sehen Sie eine lokale Variable in der Praxis:

```java
public class Main {
	public static void main(String[] args) {
		int var = 5;
		System.out.println("Die lokale Variable ist: " + var);
	}
}
```

Die entsprechende Ausgabe sieht so aus:

```java
Die lokale Variable ist: 5
```

### Instanzvariablen

Wird eine Java var **innerhalb der Klasse, aber außerhalb der Methode, des Constructors oder eines Blocks** deklariert, spricht man von einer Instanzvariablen. Diese entsteht, wenn Sie ein Objekt mit dem Schlüsselwort „new“ erstellen. Im Gegensatz zu den lokalen Variablen haben Instanzvariablen Standardwerte. Diese sind 0 bzw. 0.0 bei Zahlentypen, false bei booleschen Typen und null für Objektreferenzen. Ihren Einsatz sehen Sie im folgenden Beispiel. Dafür stellen wir uns eine Gruppe von Personen vor, die sich an einem Geburtstagsgeschenk beteiligen möchten, und listen auf, was jede einzelne Person beigesteuert hat.

```java
public class Geschenk {
	public String name;
	private double anteil;
	public Geschenk (String person) {
		name = person;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public double getAnteil() {
		return anteil;
	}
	public void setAnteil(double teilnehmerAnteil) {	
		anteil = teilnehmerAnteil;
	}
	public static void main(String[] args) {
		Geschenk teilnehmer = new Geschenk ("Peter");
		teilnehmer.setAnteil(10);
		System.out.println("Name: " + teilnehmer.getName());
		System.out.println("Anteil = " + teilnehmer.getAnteil());
		Geschenk teilnehmer2 = new Geschenk ("Sabine");
		teilnehmer2.setAnteil(15);
		System.out.println("Name: " + teilnehmer2.getName());
		System.out.println("Anteil = " + teilnehmer2.getAnteil());
	}
}
```

Die Ausgabe für diesen Codeausschnitt ist diese:

```java
Name: Peter
Anteil = 10.0
Name: Sabine
Anteil = 15.0
```

### Statische Variablen

Während die beiden anderen Java-Variablen nicht als statisch deklariert werden können, ist dies bei der statischen Variable naturgemäß anders. Sie wird **außerhalb einer Methode, eines Constructors oder eines Blocks** deklariert und gehört damit zur Klasse und nicht zu einer Instanz. Daher wird Sie von allen Instanzen der Klasse gemeinsam verwendet. Ihre Speicherzuweisung erfolgt, während die Klasse in den Speicher geladen wird. Hier ein Code-Beispiel:

```java
public class Geschenk {
	public static String teilnehmer = "Peter";
	public static void main(String[] args) {
		System.out.println("Teilnehmer: " + Geschenk.teilnehmer);
	}
}
```

Sie erhalten die folgende Ausgabe:

```java
Teilnehmer: Peter
```

## Wie erstellt man unterschiedliche Variablen?

Wenn Sie Java Variables erstellen möchten, gehen Sie immer ähnlich vor. Wir zeigen Ihnen Beispiele für die gängigsten Variablentypen und erläutern deren Besonderheiten.

### boolean

Ein [Boolean](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-boolean/) kann lediglich die Wahrheitswerte **true (wahr) oder false (unwahr)** enthalten. Er wird folgendermaßen deklariert:

```java
public class Main {
	public static void main(String[] args) {
		boolean pommesSindLecker = true;
		System.out.println(pommesSindLecker);
	}
}
```

Dies ist die Ausgabe:

```java
true
```

### int

int ist der meistgenutzte Datentyp **für Ganzzahlen**. Java-Variablen mit diesem Typ deklarieren Sie folgendermaßen:

```java
public class Main {
	public static void main(String[] args) {
		int x = 10;
		System.out.println(x);
	}
}
```

Sie erhalten diese Ausgabe:

```java
10
```

### float

float nutzen Sie **für Dezimalzahlen**. Die entsprechende Variable wird so deklariert:

```java
public class Main {
	public static void main(String[] args) {
		float x = -17.03f;
		System.out.println(x);
	}
}
```

Dies ist die passende Ausgabe:

```java
-17.03
```

### char

char enthält ein **einzelnes Zeichen**, das durch einfache Anführungsstriche oben markiert wird. Dies ist ein passendes Codebeispiel:

```java
public class Main {
	public static void main(String[] args) {
		char x = 'S';
		System.out.println(x);
	}
}
```

So wird Ihre Ausgabe aussehen:

```java
S
```

### String

Neben den obigen primitiven Datentypen können Java Variables aber auch **komplette Zeichenketten** oder Strings enthalten. Diese Abfolgen werden in doppelte Anführungsstriche oben eingefasst. Dies ist ein passendes Beispiel:

```java
public class Main {
	public static void main(String[] args) {
		String beispiel = "Dies ist ein Beispiel für einen String in Java.";
		System.out.println(beispiel);
	}
}
```

Die Ausgabe sieht so aus:

```java
Dies ist ein Beispiel für einen String in Java.
```


This is a markdown version of: [https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-variables/](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-variables/) for AI/LLM consumption.