Vorlesung Informatik 1 - Teil A: Java Kurs
1.3 Variablen und Datentypen
Eine Variable ist ein Behälter für Werte, die im im Hauptspeicher des Rechners abgelegt werden. Der gespeicherte Wert kann jederzeit durch einen neuen Wert ersetzt werden, deshalb der Begriff Variable.- Jede Variable hat einen Namen, den wir relativ frei vergeben
können. Variablennamen in Java sollten mit einem Kleinbuchstaben beginnen
- Java Variablen müssen einen Typ haben (z.B. int, double, String,
...). In einer Variable dürfen nur Werte dieses Typs gespeichert werden (man sagt Java ist stark
typisiert).
- Bei der Definition schreibt man den Typ voran: int anzahl;
- Man kann bei der Definition gleich einen Wert zuweisen:
int zaehler=1;
und mehrere Variablen gleichen Typs gleichzeitig anlegen: double laenge=10.0, breite=40.0;
Datentypen: es gibt zwei
Arten: elementare- und Referenz-Datentypen.
- Elementare Datentypen sind int, long und boolean (später lernen wir
noch 6 andere kennen)
- int umfasst eine Untermenge der ganzen
Zahlen
Literale: z.B. 1, 42, -66 0
Operatoren: + - * / - double steht für Dezimalzahlen
Literale: z.B. 1. -42. 19.33 0. (Dezimalpunkt, kein Komma)
Operatoren: + - * / - boolean speichert logische
Werte
Literale true, false - Referenz-Datentypen sind Klassen
- Beispiel:
Konto meinKonto = new Konto(); // new erzeugt ein Objekt vom Typ konto
meinKonto.einzahlen(40); // der Punkt Operator greift auf die Methode einzahlen zu. - Der new Operator erzeugt ein Objekt, in diesem Fall ein Objekt vom Typ Konto. Er ruft einen Konstruktor der Klasse.
- Mit dem Punkt-Operator (Referenzoperator) greifen wir auf Methoden oder Eigenschaften von Objekten zu.
- der = Operator heißt Zuweisungsoperator, er
speichert das was rechts von ihm steht in die Variable links vom Operator
x=4; speichert den Wert 4 in der Variable x
Instanzvariablen und lokale Variablen
- Instanzvariablen (Objektvariablen)
sind Variablen, die in der Klasse außerhalb von
Methoden definiert werde. Sie sind die Eigenschaften der
Objekte.
Beispiel:
class Konto{
private int saldoCent, kontoNummer; // jedes Objekt vom Typ Konto hat ein Saldo und eine Kontonummer
} - Zunächst definieren wir die Sichtbarkeit von Instanzvariablen immer als private, d.h. nur die eigene Klasse seiht diese Variablen (später lernen wir noch protected im Zusammenhang mit Vererbung kennen).
- lokale Variablen sind Variablen, die innerhalb einer Methode definiert werden:
Beispiel:
class Konto{
...
public static void main(String[] a{
int x=4; // x ist eine lokale Variable