Java Variablen und einfache Typen - Kekziie/Informatik-II-SS-2017 GitHub Wiki

Bezeichner

Namen (identifier) für Datenobjekte

  • frei gewählte (sinnvolle) Bezeichnungen für Elemente/ Dinge (Variablennamen, Namen für Konstanten Klassen, Methoden, ...)
  • Zugriff auf Elemente erfolgt durch ihre Namen
  • Java-Bezeichner bestehen aus:
    • Buchstaben
    • Ziffern
    • Sonderzeichen _ und $
    • Beispiele: Person, $3, _1, meineVariable, ergebnis_wert, z55, ...
    • Gegenbeispiel: 3_i, 12_buch, class, ...
    • einige reservierte Wörter die nicht als Bezeichner verwendet werden können (z.B. if, while, do, ...)

Daten und Variablen

  • Variablen sind Behälter für Werte
    • können im Verlauf eines Programmes enstehen/ verschwinden
  • Behälter dienen zur Ablage von Daten eines bestimmten Typs
  • Variablen müssen stets deklariert werden
    • es ensteht ein "Behälter" mit Name und Typ

Verwendung/ Zuweisung von Daten

  • (Programm-) Variablen besitzen stets einen Wert
  • Zuweisung: = ;
  • Bedeutung von =: Ausdruck auf der rechten Seite wird der Variablen auf der linken Seite zugewiesen

Beispiele

int i;
i = 8;
i = 15;
i = i + 3;

Deklaration von Variablen

int     index;
String  name;
boolean isGreen;
double  price;

Wertzuweisungen

index   = 5;
name    = "Peter";
isGreen = false;
price   = 3.5;

Typen

  • Datentypen legen mögliche Werte einer Variablen fest
  • Variablen müssen deklariert werden:
    • Namen
    • Datentyp

Festlegung der Variablen

<Datentyp> <Variablen-Name>;

: Einschränkung einer Variable durch ihren Wertebereich, sowie der möglichen Operationen

: bestehen aus Folge von Buchstaben,Ziffern und Sonderzeichen (siehe: Java Erste Schritte - Programme)

Beispiele:

int     meineZahl;
String  Nachname;
boolean isRed;

Typisierung

  • Variablen in Java können nur Daten eines bestimmten Typs speichern
    • strenge Typisierung der Sprache
  • Java kennt so genannte einfache Typen (primitve types):
    • byte, short, int, long: für ganze Zahlen
    • float, double: für Gleitkommazahlen
    • char: Zeichen aus einem Zeichensatz (unicode)
    • boolean: logische Werte (true, false)
  • unterschiedliche Datentypen legen Operationen fest
  • verschieden (Unter-)Typen legen fest, wie viel Speicher für eine Variable reserviert wird

Deklaration

einzelne oder auch mehrere Variablen vom selben Typ deklariert:

<Datentyp> variable1;
<Datentyp> variable2;

<Datentyp> variable1, variable2;

Deklarationen können sich über mehrere Zeilen erstrecken (können auch Kommentare enthalten)

<Datentyp> variable1, // Funktion der Variable1
           variable2; // Funktion der Variable2

Variablen müssen initialisiert werden -> Anfangswert zugewiesen bekommen

bei der Deklaration kann gleichzeitig ein initialer Wert zugewiesen werden

<Datentyp> variable = initialerWert;

Gültigkeitsbereiche von Variablen

eine Variable kann am dem Zeitpunkt der Deklaration bis zum Ende der Methode verwendet werden

int i;
i = 3;
j = 4; -> Fehler bei Übersetzung, weil Wertzuweisung vor Deklaration 

int j;
j = 6;

Variablen können einer Klasse auch außerhalb von Methoden deklariert werden mithilfe von static

-> dadurch verwendbar in der gesamten Klasse

public class Prog {
    static int k = 5;
    public static void main (String[] args) {
       k = 7;
       ...
    }
}

Literale und Konstanten

Literale

  • fest definierte konstante Werte
  • innerhalb von Ausdrücken verwendbar
  • Beispiele: 333, 42, 3.46, true, false, null, ...

Konstanten

konstanter Wert während der Programmlaufzeit

Java-Schlüsselwort: final

final int MAX_COUNT = 10;

Konvention:

  • Konstanten werden in Groß-Buchstaben geschrieben
  • bei Zusammensetzung mit Unterstrich zusammengefügt

Primitive Datentypen

Eigenschaften

  • besitzen endlichen Wertebereich
    • definierte Unter- und Obergrenze bei Zahlenbereichen
    • numerische Variablen besitzen nur beschränkte Genauigkeit
  • besitzen eine festgelegte Anzahl von Werten
  • Bemerkung: Java bietet auch die Möglichkeit eigene Datentypen zu definieren
  • Datentyp String kein primitiver Typ

Void

public static void main (String[] args)
  • public static: statische von allen Programmteilen sichtbare Funktion/ Methode
  • void: spezielle Funktion/ Methode main liefern keine Ergebniswerte
  • Rest; Funktion/Mehtode main mit ihren spezifischen Parametern (in Klammern)
  • spezieller Datentyp -> besitzt keinen Wertebereich
  • Verwendung ausschließlich bei der Deklaration von Funktionen/ Methoden
    • Festlegung, dass Funktion/ Methode kein Rückgabewert besitzt
⚠️ **GitHub.com Fallback** ⚠️