close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

1. Der Einstieg in Java Was heißt Programmieren?

EinbettenHerunterladen
1. Der Einstieg in Java
Was heißt Programmieren?
Lernziele: Am Ende dieses Kapitels sollen Sie
wissen, aus welchen Bestandteilen ein Java-Programm besteht,
¨
Java-Programme ubersetzen
¨
und ausfuhren
¨
konnen,
¨
Moglichkeiten
der Kommentierung von Java-Programmen kennen,
¨
einfachste Java-Programme erstellen konnen
und
¨
Regeln zur Formatierung von Java-Quelltext beherrschen ( Ubungen).
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
Was heißt Programmieren?
¨
• Ein Ubersetzer,
der problemorientierte Programme in maschinennahe Programme
transformiert, heißt Compiler.
¨
¨
• Werden Programme nicht vollstandig
ubersetzt
¨
und spater
ausgefuhrt,
¨
sondern
¨
Anweisung fur
¨ Anweisung ubersetzt
¨
und spater
ausgefuhrt,
¨
spricht man von einem
Interpreter.
• Der Java-Compiler ubersetzt
¨
das sogenannte Quellprogramm in Java-Bytecode,
¨
der unabhangig
von einem bestimmten Prozessor ist.
• Der Java-Interpreter analysiert den erzeugten Bytecode schrittweise und fuhrt
¨
ihn
aus.
¨
☞ virtuelle Maschine (VM), Plattformunabhangigkeit
1. Der Einstieg in Java
•
•
•
•
•
1. Der Einstieg in Java
10
Was heißt Programmieren?
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
12
Was heißt Programmieren?
Was heißt Programmieren?
Java Quellprogramm
Ein Programm ist ein Algorithmus, der in einer Programmiersprache formuliert ist.
Java Compiler
Arten von Programmiersprachen:
• Maschinensprache ist eine Sprache, die der Prozessor des Rechners direkt versteht.
☞ Notation aus Nullen und Einsen, schwer lesbar
¨
• Assembler: Jedem binaren
Maschinencode ist fur
¨ die leichtere Lesbarkeit ein Assemblercode aus Buchstaben und Ziffern zugeordnet.
¨
☞ Abhangigkeit
vom Prozessortyp
¨
• Hohere
bzw. problemorientierte Programmiersprachen: Es stehen Operationen zur
Verfugung,
¨
die nicht eins-zu-eins auf eine Operation des Prozessors abgebildet
¨
werden konnen.
¨
☞ einfachere Programmierung, nichttriviale Ubersetzung
in Maschinensprache
notwendig
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
11
Java Bytecode
Java VM
für Windows
ausführbares
Windows
Programm
Java VM
für Linux
ausführbares
Linux
Programm
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
Java VM
für Mac OS X
ausführbares
Mac OS X
Programm
13
1. Der Einstieg in Java
Was heißt Programmieren?
1. Der Einstieg in Java
• Programmieren bedeutet, unter Einsatz einer Programmiersprache ein gegebenes
¨
Problem zu losen.
• Hierfur
¨ sind eine Reihe von Arbeitsschritten notwendig, z.B.: Analyse, Modellierung, Codierung, Compilierung, Ausfuhrung
¨
• Das Schreiben des Programmtextes ist die Codierung. Dies geschieht unter Einsatz eines Texteditors.
• Meistens weisen Programme nach der erstmaligen Codierung Fehler auf. Dies
¨
konnen
sein:
– Syntaxfehler (Fehler in der Grammatik)
– Semantikfehler (Das Programm macht nicht das, was es soll.)
Mein erstes Java-Programm
Mein erstes Java-Programm
public class Berechnung {
public static void main(String[] args) {
int i;
i = 3 + 4;
System.out.println(i);
}
}
Das Programm berechnet 3 plus 4 und gibt das Ergebnis aus!
✎ Compilierung und Ausfuhrung
¨
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
14
Was heißt Programmieren?
Problem
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
16
Mein erstes Java-Programm
Ausdruck, Variable, Zuweisung
Welches Problem ist zu lösen?
Was erwarte ich von meiner Lösung?
Analyse / Modellierung
algorithmische
Beschreibung
i = 3 + 4;
Wie lässt sich das Problem lösen?
Rechts vom Gleichheitszeichen findet eine Berechnung statt. Solch eine Berech¨ immer ein Wert.
nungsvorschrift heißt Ausdruck. Zu einem Ausdruck geh ort
Programmierung / Codierung
Programm
Links steht der Name einer Variablen (hier i). Dieser wird der Wert des Ausdrucks
zugewiesen. Man bezeichnet dies als Zuweisung.
Wie bringe ich meine Idee dem Rechner bei?
Z.B. durch ein Java−Programm?
Übersetzung / Compilierung
Eine Zuweisung ist eine spezielle Form einer Anweisung.
ausführbares
Programm
Wie muss der ausführbare Code aussehen?
Z.B. Java−Bytecode oder Maschinencode?
Einfache Anweisungen werden durch ein Semikolon (;) abgeschlossen.
Ausführung / Interpretierung
Problemlösung
Ist das Problem gelöst?
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
15
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
17
1. Der Einstieg in Java
Mein erstes Java-Programm
1. Der Einstieg in Java
Methodenaufruf
Ganze Zahlen und Gleitkommazahlen
Java unterscheidet zwischen ganzen Zahlen und Gleitkommazahlen. Beispiele fur
¨
ganze Zahlen:
0
1
-1
1.0
-3.7E2
-1.0
1.9E-17
System.out.println(i);
System.out.println ist der Name einer Methode (ein Unterprogramm), mit der
¨
wir Text und Zahlen auf dem Bildschirm ausgeben konnen.
2147483647
In Klammern folgt nach dem Methodenname das, was wir der Methode ubergeben
¨
wollen. Hier: der Wert der Variablen i.
Beispiele fur
¨ Gleitkommazahlen:
0.0
42.314159
Mein erstes Java-Programm
2147483647.0
.12345
¨
Die Methode System.out.println ist flexibel einsetzbar. Statt einer Zahl k onnen
wir auch Text ausgeben lassen:
System.out.println("Das Ergebnis ist: ");
System.out.println(i);
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
18
Mein erstes Java-Programm
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
20
Mein erstes Java-Programm
¨
Will man beides in einer Zeile ausgeben, konnen
wir
Variablendeklaration
System.out.print("Das Ergebnis ist: ");
System.out.println(i);
int i;
oder
Damit geben wir bekannt, daß wir eine Variable mit dem Namen i verwenden wollen.
Wir bezeichnen dies als Variablendeklaration.
In Java gilt streng: Jede Variable muß vor ihrer Verwendung deklariert werden (declare
before use).
System.out.println("Das Ergebnis ist: " + i);
verwenden.
¨ ein Datentyp. Hier int, d.h. ganze
Ebenfalls gilt streng: Zu jeder Variablen gehort
Zahlen (genauer ganze Zahlen zwischen −231 und 231 − 1).
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
19
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
21
1. Der Einstieg in Java
Mein erstes Java-Programm
1. Der Einstieg in Java
Grundelemente eines Java-Programms
Kommentare
¨
Blocke
¨
Wenn wir (oder andere) nach langerer
Zeit einen Java-Quelltext analysieren, werden
wir uns u.U. nicht mehr an den Sinn jeder Anweisung erinnern.
¨
Java nutzt zur Strukturierung des Quelltextes sogenannte Bl ocke.
Deshalb ist die Kommentierung von Programmen von großer Wichtigkeit.
Ein Block wird durch “{” und “}” eingeschlossen.
¨
Java bietet hierfur
¨ drei verschiedene Moglichkeiten:
¨
Unser Beispielquelltext hat zwei Blocke:
• Zeilenkommentar
1. Die Klasse
Eine Klasse ist in Java die oberste Struktureinheit. Sie sieht folgendermaßen aus:
public class Klassenname {
. . .
}
• Mehrzeiliger Kommentar
Wichtig: Der Dateiname, in der Sie den Quelltext der Klasse speichern, muß
Klassenname.java lauten.
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
22
Mein erstes Java-Programm
2. Die Hauptmethode
Methoden sind Struktureinheiten unterhalb von Klassen.
Jede Klasse, die ein ausfuhrbares
¨
Programm darstellen soll, muß eine Methode
mit dem Namen main besitzen:
public static void main(String[] args) {
. . .
}
Den Rest der ersten Zeile der Methode mussen
¨
Sie bis auf weiteres genau so wie
hier angegeben verwenden.
¨
¨
✎ Erlauterungen
zu Ubersetzung
und Ausfuhrung.
¨
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
a = b + c; // dies ist ein Kommentar
23
/* Kommentar ...
mehr Kommentar ...
letzte Kommentarzeile ...
*/
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
24
Grundelemente eines Java-Programms
• Dokumentationskommentar
Solche Kommentare beginnen mit /** und enden mit */.
Es sind spezielle Kommentare, aus denen mit dem Programm javadoc eine
HTML-Dokumentation in standardisierter Form erzeugt werden kann.
/**
* Dieses Programm berechnet die Lottozahlen von naechster
* Woche. Dabei erreicht es im Schnitt eine Genauigkeit
* von 99,5%
*
* @author Hans Mustermann
1998-10-26
* @date
* @version 1.0
*/
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
25
1. Der Einstieg in Java
Grundelemente eines Java-Programms
1. Der Einstieg in Java
Grundelemente eines Java-Programms
Bezeichner
Literale
¨
Wir werden spater
oft in die Verlegenheit kommen, irgendwelchen Dingen Namen geben zu mussen,
¨
z.B. einer Variablen als Platzhalter, um eine Rechnung mit verschie¨
denen Werten durchfuhren
¨
zu konnen.
In Programmiersprachen heißen solche Namen Bezeichner.
¨
Literale haben, abhangig
von ihrem Typ, vorgeschriebene Schreibweisen:
Bezeichner bestehen aus:
•
•
•
•
Ein Literal bzw. eine Literalkonstante beschreibt einen konstanten Wert, der sich in¨
nerhalb eines Programms nicht andern
kann.
•
•
•
•
•
•
Buchstaben a,b,...,y,z,A,...,Z
dem Unterstrich
dem Dollarzeichen $
Ziffern 0,...,9
Daruberhinaus
¨
gelten folgende Regeln:
☞ Bezeichner mussen
¨
mit einem Buchstaben, dem Unterstrich oder dem Dollarzeichen beginnen.
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
26
Grundelemente eines Java-Programms
¨
☞ Reservierte Worter
durfen
¨
nicht als Bezeichner verwendet werden.
ganze Zahlen (z.B. 23 oder -166),
Gleitkommazahlen (z.B. 3.14),
Wahrheitswerte (true und false),
einzelne Zeichen (z.B. ’a’),
Zeichenketten (z.B. "Hallo Welt"),
das sogenannte Null-Literal fur
¨ Referenzen, dargestellt durch die Literalkonstante
null.
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
28
Grundelemente eines Java-Programms
¨
¨
Reservierte Worter
und Schlusselw
¨
orter
Gultige
¨
Bezeichner (in Java):
•
•
•
•
¨
¨
Schlusselw
¨
orter
sind Worter,
die mit einer vordefinierten symbolischen Bedeutung belegt sind.
Hallo Welt
_H_A_L_L_O_
¨
Solche Schlusselw
¨
orter
durfen
¨
ebenso wie die Literalkonstanten true, false und
null nicht als Bezeichner verwendet werden.
hallo123
hallo 123
abstract
case
continue
extends
goto
int
package
short
synchronized
try
Keine gultigen
¨
Bezeichner (in Java) sind:
•
•
•
•
101Dalmatiner
beginnt mit einer Ziffer
Das war’s
Das Zeichen ’ ist nicht erlaubt
Hallo Welt
Leerzeichen ist nicht erlaubt
class
ist ein reserviertes Wort
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
27
assert
catch
default
final
if
interface
private
static
this
void
boolean
char
do
finally
implements
long
protected
strictfp
throw
volatile
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
break
class
double
float
import
native
public
super
throws
while
byte
const
else
for
instanceof
new
return
switch
transient
29
1. Der Einstieg in Java
Grundelemente eines Java-Programms
1. Der Einstieg in Java
Trennzeichen und Interpunktionszeichen
Grundelemente eines Java-Programms
Operatorsymbole
¨
Zu welcher Pferderasse gehoren
Blumentopferde?
Heißt es der, die oder das Kuhliefumdenteich?
Operatoren sind spezielle Symbole, die dazu dienen, jeweils bis zu drei unterschiedli¨
che Werte — die Operanden — zu einem neuen Wert zu verknupfen.
Auch der Java-Compiler muß in der Lage sein, einzelne Bezeichner, reservierte
¨
Worter
und Literale voneinander zu trennen. Hierzu dienen:
Wir unterscheiden die Operatoren nach der Anzahl ihrer Operanden:
•
•
•
•
•
•
¨
monadische Operatoren sind Operatoren, die nur einen Operanden ben otigen.
Beispiele: ++ oder --
Leerzeichen
Zeilenendezeichen
Tabulatorzeichen
Kommentare
Operatoren (z.B. + oder *)
Interpunktionszeichen
dyadische Operatoren vernupfen
¨
zwei Operanden. Beispiele: +, - oder ==
triadische Operatoren verknupfen
¨
drei Operanden. Davon gibt es in Java nur einen:
signum = x >= 0 ? 1 : -1;
. , ; ) ( { } [ ]
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
30
Grundelemente eines Java-Programms
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
1. Der Einstieg in Java
Operatoren und Interpunktionszeichen haben in Java eine besondere Bedeutung. Sie
¨
durfen
¨
daher nur dort eingesetzt werden, wo sie hingeh oren.
¨
Bezeichner, reservierte Worter
und Literale mussen
¨
durch mindestens eines der obigen Symbole voneinander getrennt werden. Hierbei ist es in Java eigentlich egal, welche Trennzeichen man verwendet und wie viele davon.
32
Grundelemente eines Java-Programms
import-Anweisung
¨
Viele Dinge, die wir in Java benotigen,
befinden sich nicht im Kern der Sprache, sondern sind in Klassen ausgelagert, die sich wiederum in Paketen befinden. Dies gilt z.B.
fur
¨ die Bildschirmausgabe oder mathematische Funktionen wie Sinus oder Cosinus.
Die Zeile
public static void main (String[] args)
Die meisten solcher Klassen mussen
¨
explizit importiert werden. Hierzu dient die
import-Anweisung.
¨
ist aquivalent
zu den folgenden Zeilen:
Beispielsweise sorgt die Anweisung
public
static/* */void
main( // ...
String[] args)
import java.io.*;
dafur,
¨ daß alle Klassen des Pakets java.io importiert werden und somit fur
¨ die Pro¨
grammierung benutzt werden konnen.
☞ import-Anweisungen stehen vor der Klassendefinition.
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
31
Peter Becker, Programiersprache Java — FH Bonn-Rhein-Sieg, SS 07
33
Document
Kategorie
Bildung
Seitenansichten
13
Dateigröße
45 KB
Tags
1/--Seiten
melden