Thomas Kühne
Java 1
Sun Geburt (1991-1995) 2.Generation 1999 Open Source 2006
Thomas Kühne
Was ist eigentlich Java? Programmiersprache ● ●
„Wie sage ich es?“ .JAVA wird vom Compiler „javac“ in .CLASS umgewandelt
Virtuelle Maschine ● ●
„Mach das Gesagte“ .CLASS wird vom Interpreter „java“ ausgeführt
Bibliothek Damit nicht jeder das Rad bzw. den Container neu entwickeln muss.
Thomas Kühne
Ganze Zahlen Typ
Bits
Minimum Maximum
boolean 1 false byte 8 -27 short 16 -215 int 32 -231 long 64 -263 beliebig beliebig
true 27-1 215-1 231-1 263-1 beliebig
Class java.lang.Boolean java.lang.Byte java.lang.Short java.lang.Integer java.lang.Long java.math.BigInteger
char ist keine Typ mit dem man normalerweise rechnet: '1' ist nicht gleich 1!
Thomas Kühne
Boolean 1) boolean a;
a=?
2) boolean b = true;
a=? b=1
3) boolean c = false;
a=? b=1 c=0
4) a = b; // Zuweisung
a=1 b=1 c=0
5) a = !b; // Negation
a=0 b=1 c=0
6) a = b || c; // Oder
a=1 b=1 c=0
7) a = b && c; // Und
a=0 b=1 c=0
8) a = b ^ c; // Xor
a=1 b=1 c=0
9) a |= (b ^ !c) || (true && c);
Thomas Kühne
Operationen mit ganzen Zahlen 1) byte d = 3 + 4;
d=7
2) short e = 5 - 1;
d=7 e=4
3) int f = d=7 e=4 f=+... Integer.MAX_VALUE; 4) long g = f;
d=7 e=4 f=+...
g=+...
5) f += 1; g += 1;
d=7 e=4 f=-...
g=+...+1
6) f = 12 / 5;
d=7 e=4 f=2
g=+...+1
7) e -= (byte)(d % e);
Thomas Kühne
Vergleiche a) gleich:
a == b
b) ungleich:
a != b
c) größer:
a>b
d) kleiner:
a
e) kleiner gleich: a <= b f) größer gleich: a >= b
Thomas Kühne
Fließkommazahlen Class Typ Bits Minimum Maximum 32 float 2-126 (2-2-23)·2127 java.lang.Float double 2-1022 (2-2-52)·21023 java.lang.Double 64 beliebig beliebig beliebig java.math.BigDecimal
→ java.lang.Math !
Thomas Kühne
Grundstruktur eines Programms [1] Eingabe [1] Aufforderung [2] Einlesen [3] Überprüfen ob die Eingaben vom Programm verarbeitet werden können
[2] Berechnung [1] Vorbereitung [2] eigentliche Berechnung [3] Überprüfen ob das Ergebnis sinnvoll ist
[3] Ausgabe
Thomas Kühne
class (1) public class Demo { (2) }
Thomas Kühne
main (1) public class Demo { (2) public static void main(String[] args){ (3) } (4) }
Thomas Kühne
Anweisung (1) public class Demo { (2) public static void main(String[] args){ (3) (4) } (5) }
System.out.println("Hallo Welt!");
Thomas Kühne
Import 1) import java.util.Scanner; 2) 3) public class Demo { 4) public static void main(String[] args) { 5) } 6) }
Thomas Kühne
Deklaration (1) import java.util.Scanner; (2) (3) public class Demo { (4) public static void main(String[] args) { (5) (6) } (7) }
Scanner s;
Thomas Kühne
new (1) import java.util.Scanner; (2) (3) public class Demo { (4) public static void main(String[] args) { (5)
Scanner s;
(6)
new Scanner(System.in);
(7) } (8) }
Thomas Kühne
Zuweisung (1) import java.util.Scanner; (2) (3) public class Demo { (4) public static void main(String[] args) { (5)
Scanner s;
(6)
s = new Scanner(System.in);
(7) } (8) }
Thomas Kühne
mini-Programm (1) import java.util.Scanner; (2) public class Echo { (3) public static void main(String[] args) { (4)
System.out.println("Geben Sie bitte Text ein:");
(5)
Scanner s = new Scanner(System.in);
(6)
String zeile = s.next();
(7)
System.out.println("Das erste Wort ist " + zeile + ".");
(8) } (9) }
Thomas Kühne
throws (1) import java.io.InputStreamReader; (2) public class Thrown { (3)
public static void main( String[] args) throws Exception {
(4)
InputStreamReader reader;
(5)
reader = new InputStreamReader(System.in);
(6)
reader.read();
(7) } (8) }
Thomas Kühne
if / else (1) import java.util.Scanner; (2) public class Demo { (3) public static void main(String[] args) { (4)
System.out.println("Eine ganze Zahl bitte:");
(5)
Scanner s = new Scanner(System.in);
(6)
if(1 <= s.nextInt()){
(7) (8)
System.out.println("Fall A"); }else{
(9)
System.out.println("Fall B");
(10)
}
(11)
System.out.println("Fall C");
(12) } (13) }
Thomas Kühne
for (1) public class Demo { (2) public static void main(String[] args) { (3)
for(int i = 3; i < 6; i++){
(4)
System.out.println("A " + i);
(5)
}
(6)
System.out.println("B");
(7) } (8) }
Thomas Kühne
while (1) public class Demo { (2) public static void main(String[] args) { (3)
int i = 6;
(4)
while(i > 3){
(5)
System.out.println("A " + i);
(6)
i--;
(7)
}
(8)
System.out.println("B " + i);
(9) } (10) }
Thomas Kühne
do - while (1) public class Demo { (2)
public static void main(String[] args) {
(3)
int i = 6;
(4)
do{
(5)
System.out.println("A " + i);
(6)
i--;
(7)
}while(7 < i);
(8)
System.out.println("B " + i);
(9) (10) }
}
Thomas Kühne
break (1) public class Demo { (2) public static void main(String[] args) { (3)
for(int i = 3; i < 6; i++){
(4)
if(5 == i){
(5)
break;
(6)
}
(7)
System.out.println("A " + i);
(8)
}
(9)
System.out.println("B");
(10) } (11) }
Thomas Kühne
return (1) public class Demo { (2) public static void main(String[] args) { (3)
for(int i = 3; i < 6; i++){
(4)
if(5 == i){
(5)
return;
(6)
}
(7)
System.out.println("A " + i);
(8)
}
(9)
System.out.println("B");
(10) } (11) }
Thomas Kühne
Nächstes Mal A) Fehler A) Der Compiler hat immer recht. B) Der Interpreter hat immer recht.
B) Einige weitere Buchstaben aus dem Java Alphabet. C) Wie die Buchstaben zu Wörtern zusammengefügt werden. Oder: Wie löst man Hausaufgaben?