Grundlagen der Java-Programmierung1 Einführung in die Programmierung in JAVA AG SS 2003...
-
Upload
vergil-heiser -
Category
Documents
-
view
105 -
download
2
Transcript of Grundlagen der Java-Programmierung1 Einführung in die Programmierung in JAVA AG SS 2003...
Grundlagen der Java-Programmierung 1
Einführung in die Programmierung in JAVAAG SS 2003
Veranstalter: Tim Stockheim <[email protected]>Jochen Franke <[email protected]>Daniel Beimborn <[email protected]
frankfurt.de>
Donnerstag 14.00 – 16.00 Uhr – Raum 220 C
Grundlagen der Java-Programmierung 2
Ablaufplan
• 8.05.2003 Installation des JDK, Variablen,arithmetische Operatoren, Schleifen
• 15.05.2003 logische Operatoren, Bedingungen,Methoden, Eclipse als IDE
• 22.05.2003 Klassenkonzept und Vererbung, Pakete,Beispiele
• 05.06.2003 Exceptions, weitere Programmbeispiele
• 12.06.2003 Input/Output- Operationen auf Datei-system und Netzwerkebene
Grundlagen der Java-Programmierung 3
Die Programmiersprache JAVA
Literaturhinweise zu Java:
• Guido Krüger: Handbuch der Java-Programmierung, 3. Auflage Addison-Wesley, 2002kostenlos im Netz: http://www.javabuch.de
• David Flanagan: Java in a Nutshell, O‘Reilly Verlag, 4. Auflage, 2000
• David Flanagan: Java Examples in a Nutshell, O‘Reilly, 2. Auflage, 2001
WWW-Adresse: http://www.javasoft.com
Grundlagen der Java-Programmierung 4
Java EinführungTim Stockheim
Grundlagen der Java-Programmierung 5
• Entwickelt von SUN Microsystems mit dem Ziel einer Programmiersprache für PDAs
• Sprachkonzept erwies sich als ideal für die Anforderungen des WWW
• Erste Version 1995 vorgestellt
• Syntax ähnelt der von C bzw. C++, inhaltlich bestehen aber deutliche Unterschiede
Die Programmiersprache JAVA
Grundlagen der Java-Programmierung 6
JAVA ist plattformunabhängig
• Weil sich Java-Programme in ein plattformunabhängiges Byte-Codeformat übersetzen lassen, kann eine Java-Anwendung auf jedem System ausgeführt werden, solange auf diesem System die Java Virtual Machine implementiert ist.
Grundlagen der Java-Programmierung 7
• Das ist insbesondere für Anwendungen wichtig, die über das Internet oder andere heterogene Netzwerke verteilt werden.
• Ein architekturunabhängiger Ansatz ist aber auch über den Rahmen netzwerkbasierter Anwendungen hinaus sinnvoll.
JAVA ist plattformunabhängig
Grundlagen der Java-Programmierung 8
JAVA ist objektorientiert
• In einem objektorientierten System besteht eine Klasse aus einer Reihe von Daten, sowie aus Methoden, die mit diesen Daten arbeiten.
• Zusammengenommen beschreiben Daten und Methoden den Zustand und das Verhalten eines Objekts.
Grundlagen der Java-Programmierung 9
JAVA ist objektorientiert
• Klassen werden in einer Hierarchie angeordnet, so dass Unterklassen das Verhalten von übergeordneten Klassen (Superklassen) erben können.
• Eine Klassenhierarchie besitzt immer eine Stammklasse. Diese Klasse besitzt ein sehr allgemeines Verhalten.
Grundlagen der Java-Programmierung 10
Animal
Cats Dogs
DanielJochen Tim
Grundlagen der Java-Programmierung 11
JAVA ist objektorientiert
• Java wird mit einem sehr umfangreichen Satz von Klassen ausgeliefert. Diese sind in Paketen angeordnet, die in den Programmen verwendet werden können.
• Beispielsweise stellt Java Klassen zur Verfügung, mit denen Komponenten grafischer Benutzerschnittstellen erzeugt werden können (das java.awt-Paket).
Grundlagen der Java-Programmierung 12
JAVA ist objektorientiert
• Java stellt Klassen zur Verfügung, mit denen die Ein- und Ausgabe behandelt wird (das java.io-Paket), sowie Klassen, die die Netzwerkfunktionalität unterstützen (das java.net-Paket).
Grundlagen der Java-Programmierung 13
JAVA ist interpretiert
• Java ist eine interpretierte Sprache: Der Java-Compiler erzeugt einen Byte-Code für die Java Virtual Machine (JVM) und keinen direkten Maschinencode.
• Um ein Java-Programm auszuführen, wird der Java-Interpreter benutzt, der den kompilierten Byte-Code ausführt.
Grundlagen der Java-Programmierung 14
Begriffe
• Eigenständige Applikation ("normales, ausführbares Programm")
• Applet:– innerhalb eines Web-Browser oder eines Applet-Viewer ausführbar.– Container bildet zweites Betriebssystem– teilt Einschränkungen des Web-Browsers:
• kein Lese-Zugriff auf Dateisystem des Clientrechner (außer: Benutzer erlaubt es)
• nur Verbindung zum Host, von dem es geladen wurde• keine Möglichkeit des Starts von auf dem Clientrechner
vorhandenen Programmen
Diese Modell wird auch als Sandbox bezeichnet.
Grundlagen der Java-Programmierung 15
Java Development Kit (JDK)
• Plattformen:– Windows, Macintosh, Linux, Sun Solaris, ...
• Befehlszeilenorientiertes Tool
• JDK - Zusammensetzung aus mehreren Tools:– Compiler: javac
– Interpreter: java
– Disassembler: javap
– Appletviewer: appletviewer
– ...
Grundlagen der Java-Programmierung 16
JAVA Tutorial
Grundlagen der Java-Programmierung 17
JAVA: Die Syntax
• Jede Anweisung muß mit einem Semikolon (;) abgeschlossen werden.
• JAVA unterscheidet Groß-/Kleinschreibung, d.h. z.B. "anzahl" ungleich "Anzahl".
• Beliebiges Einfügen von Leerzeichen / Leerzeilen zwischen Anweisungen zulässig.
• Kommentare innerhalb eines JAVA-Programms werden mit "/*" eingeleitet und mit "*/" beendet, z.B. /* Dies ist ein Kommentar */
• Kommentare, die nur bis zum Zeilenende gehen, werden mit "//" eingeleitet, z.B. // Kommentar
Grundlagen der Java-Programmierung 18
Beispiel 1
class HelloWorld {public static void main( String[] args) {
System.out.println(“Hello World!“);}
}
• Dieses Programm besteht, wie jedes Java-Programm, aus einer Klassendefinition vom Typ public.
Grundlagen der Java-Programmierung 19
Beispiel 1
• Die Klasse enthält eine Methode namens main(), die den Einstiegspunkt für alle Java-Anwendungen darstellt, d.h. an diesem Punkt beginnt der Java-Interpreter mit der Ausführung des Programms.
• main()selbst besteht nur aus einer einzigen Zeile, die unsere Nachricht ausgibt:
Hello World!
Grundlagen der Java-Programmierung 20
Beispiel 1
• Das Programm muß in einer Datei gesichert werden, die den gleichen Namen besitzt, wie die public-Klasse, wobei noch die Erweiterung .java anzuhängen ist.
• Um das Programm zu kompilieren, verwendet man javacC:\>javac HelloWorld.java
• Dieser Befehl erzeugt die Datei HelloWorld.class im aktuellen Verzeichnis.
Grundlagen der Java-Programmierung 21
Beispiel 1
• Um das Programm auszuführen, wird der Java-Interpreter java verwendet:
C:\>java HelloWorld
• Beachten Sie beim Aufruf des Interpreters, daß der Dateiname ohne das anhängende .class angegeben wird.
Grundlagen der Java-Programmierung 22
JAVA: Variablen
• Variablen repräsentieren Speicherplätze zur Aufnahme veränderlicher Werte in einem Programm.
• erlaubte Zeichen für Variablennamen: – Buchstaben des engl. Alphabets (ohne Umlaute), – 10 Ziffern, – Unterstrich "_".
• Die erste Stelle darf keine Ziffer sein!
• Programmierer dürfen keine reservierten Wörter für eigene Namen verwenden (z.B. main, int,...)
Grundlagen der Java-Programmierung 23
JAVA: Datentypen
• Alle Variablen müssen deklariert werden, bevor sie benutzt werden können.
• Notation für Variablendeklaration:
Datentyp variable1,...,variablen;– Bedeutung: Variable1,...,Variablen sind vom
angegebenen Datentyp.
• Beispiel:int v1, v2, v3;char v4;byte v5;
Grundlagen der Java-Programmierung 24
JAVA: Datentypen
• Datentypen definieren Struktur und Wertebereiche der von einem Programm zu verarbeitenden Daten.
• elementare Datentypen in JAVA (Call by value):boolean - Wahrheitswertbyte, short, int, long - ganze Zahlen
Beispiel:int a; // erzeugt eine Variable vom Typ int.boolean b = true; /* erzeugt einen
Wahrheitswert und setzt diesen auf true */
Grundlagen der Java-Programmierung 25
Wiederholung
Schleife:Solange (Bedingung)erfüllt ist:
führe Anweisungenaus!
while ( Bedingung) { Anweisung1; Anweisung2;
… AnweisungN;}
Beispiel:• Anweisungen: i = i + 1;
Ausgabe von “Zähler ist: “ + i• Bedingung: (i < 10)
Grundlagen der Java-Programmierung 26
Ablaufstruktur: Wiederholung
Beispiel für Ablauf mit Wiederholung:
class Schleife { /* Diese Klasse testet, das Zählen von 1 bis 10! */ public static void main(String[] args) { int i = 0; while (i<10) { i=i+1; System.out.println(„Zähler: "+i); } }}
Grundlagen der Java-Programmierung 27
JAVA: Datentypen
• weitere elementare Datentypen in Java
float Gleitkommazahldouble Gleitkommazahlchar einzelnes Zeichen
Grundlagen der Java-Programmierung 28
Gleitkommazahlen
(Fließkommazahlen, Floating Point Numbers)• zur näherungsweisen Darstellung reeller Zahlen
auf Rechnern.• Zahlen werden dargestellt in der Form m . be
– b, e ganze Zahlen– m = Mantisse, gibt Zahlenwert an– e = Exponent, charakterisiert die Größenordnung der
Zahl– b = Basis (z.B. 10)
• z.B. 12.25: 0.1225 . 102
122.5: 0.1225 . 103
Grundlagen der Java-Programmierung 29
JAVA: Arithmetik
Operatoren werden nur auf elementare Datentypen (und Strings [+]) angewendet.
+ Addition- Subtraktion; Vorzeichen* Multiplikation/ Division (int-Typen: ganzzahliger Anteil: 17/3 = 5)
% Divisionsrest (nur bei int-Typen: 17%3 = 2)
Grundlagen der Java-Programmierung 30
Java Einführung
- Beginn zweiter Teil -
Grundlagen der Java-Programmierung 31
JAVA: Arrays
• Felder zur Erfassung mehrerer Variablen vom selben Typ
• Arrays müssen initialisiert werden.• Auslesen bzw. beschreiben darf nur im
initialisierten Bereich erfolgen.
Beispiel:
int[] b = new int[10]; /* erzeugt ein Feld vom Typ int mit 10 Speicherplätzen */
Grundlagen der Java-Programmierung 32
JAVA: Arrays
• Beispielprogramm:
public class Schleife2 {public static void main( String[] args) { int a[] = new int[10];
int i = 0; a[0] = 2; while (i<10) { System.out.println( "a["+i+"] ist : "+a[i]); i = i+1; a[i] = 2*a[i-1]; }}
}
Grundlagen der Java-Programmierung 33
JAVA: Methoden
• Eine Methode besteht aus der Deklaration und einem Methodenkörper, wobei dieser in geschweiften Klammern steht.Bsp.: public boolean funct ( int a) {
return true; }
• public gibt hier die Zugriffsberechtigungen an (jeder)• boolean bedeutet, dass die Methode einen boolean-
Wert zurückgeben muss ( true oder false)• int a beschreibt, den Typ und Namen des
übergebenen Wertes, wobei a dem Namen innerhalb der Methode entspricht
Grundlagen der Java-Programmierung 34
JAVA: Methoden
• "void" weist darauf hin, daß eine Funktion keinen Funktionswert zurückgibt.
Bsp.: void funct( int a) gibt keinen Funktionswert zurück.
• Falls kein Eingabeparameter benötigt wird, verwendet man ein leeres Klammerpaar:
Bsp.: int funct() kann kein Wert übergeben werden
Grundlagen der Java-Programmierung 35
Ablaufstruktur: Alternative
if (ausdruck) {anweisung1;
} else { anweisung2;
}
ausdruckja nein
anweisung1 anweisung2
Grundlagen der Java-Programmierung 36
Logische Ausdrücke(Bedingungen)
Logische Operatoren werden nur auf elementare Datentypen.
&& AND
|| OR
! NOT
(einfaches & oder | auch möglich beide Seiten werden dann garantiert ausgeführt.)
Grundlagen der Java-Programmierung 37
Ablaufstruktur: Alternative
• Switch-Bedingung
Ausdruck
Fall 1
Fall N... others
Anw. 1
Anw. N Ausnahme- Anw.
Grundlagen der Java-Programmierung 38
Ablaufstruktur: Alternative
Switch-Bedingung
class unterscheidung {public static void main(String[] args) {
int zahl;zahl = Integer.parseInt(args[0]);
switch(zahl) {case 1: System.out.println("sehr gut"); break;case 2: System.out.println("gut"); break;case 3: System.out.println("befriedigend");
break;case 4: System.out.println("ausreichend");
break;case 5: System.out.println("mangelhaft"); break;default: System.out.println("Falsche Eingabe!");
}}
}
Grundlagen der Java-Programmierung 39
Ablaufstruktur: Wiederholung
• abweisende Schleife
While bedingung
anweisung
while ( bedingung) anweisung;
Bedeutung:• Solange bedingung "wahr" (true) ist, wird
anweisung ausgeführt.• Abbruchtest vor jedem Schleifendurchlauf.
Grundlagen der Java-Programmierung 40
Ablaufstruktur: Wiederholung
Abweisende Schleife: while
class Produkt2 {public static void main(String[] args) {
int produkt = 1;int i = 0;while ( Integer.parseInt(args[i]) != 0) {
produkt *= Integer.parseInt(args[i]);i++; // gleichbedeutend mit i=i+1;
}System.out.println("Ergebnis: "+produkt);
}}
Grundlagen der Java-Programmierung 41
Ablaufstruktur: Wiederholung
• Wiederholung: annehmende Schleife
do anweisung
while bedingung
do anweisung;while (bedingung)
Bedeutung:• anweisung wird ausgeführt, solange bedingung „wahr“ ist.• Abbruchtest nach dem Schleifendurchlauf.• anweisung wird also mindestens einmal ausgeführt.
Grundlagen der Java-Programmierung 42
Ablaufstruktur: Wiederholung
Annehmende Schleife: do ... while
class Produkt3 {public static void main(String[] args){
int produkt = 1;int i = 0;do {
produkt *= Integer.parseInt(args[i]);i++;
} while ( Integer.parseInt(args[i]) != 0); System.out.println( "Ergebnis: "+produkt);
}}
Grundlagen der Java-Programmierung 43
Exkurs: Wiederholungfor-Schleife
Schleife: for( Initialisierung; Bedingung; Änderung) { … }
class Produkt3 {public static void main(String[] args){
int produkt = 1;
for( int i=0; i<args.length; i++) {produkt *= Integer.parseInt(args[i]);
}System.out.println( "Ergebnis: "+produkt);
}}
Grundlagen der Java-Programmierung 44
Kommandozeilen-argumente
• Das einzige Argument an main()ist ein Array von Strings, der üblicherweise args genannt wird.
• Die Länge dieses Arrays ist über args.length verfügbar.
• Die Elemente dieses Arrays sind die Argumente, die in der Kommandozeile nach dem Klassennamen angegeben wurden.
• Beispiel 2 zeigt ein Programm, das einfach seine Argumente ausgibt:
Grundlagen der Java-Programmierung 45
class echo {public static void main(String[] args) {
for( int i=0; i < args.length; i++)System.out.print(args[i] + “ “);
System.out.print(“\n“);System.exit(0);
}}• Zu beachten: main()muß so deklariert sein, daß es void
zurückgibt.• Aus einem Java-Programm kann also kein Wert
zurückgegeben werden, indem eine return-Anweisung in main() verwendet wird.
Beispiel 2
Grundlagen der Java-Programmierung 46
Beispiel 2
• Wenn ein Wert zurückgeliefert werden soll, wird System.exit() mit dem gewünschten Integer-Wert aufgerufen(vgl. Beispiel 2).
• Zu beachten: die Verarbeitung und Interpretation dieses Exit-Wertes hängt vom Betriebssystem ab.
Grundlagen der Java-Programmierung 47
Einführung in Klassen und Objekte
• Eine Klasse ist eine Sammlung von Daten sowie von Methoden, die mit diesen Daten arbeiten.
• Die Daten und Methoden dienen zusammengenommen üblicherweise dazu, den Inhalt und die Fähigkeit irgendeiner Art von Objekt zu definieren.
Grundlagen der Java-Programmierung 48
Einführung in Klassen und Objekte
• Zum Beispiel kann ein Kreis durch die X/Y-Position seines Mittelpunktes und durch seinen Radius beschrieben werden.
• Auf Kreisen können verschiedene Operationen ausgeführt werden: ihren Umfang berechnen; ihre Flächen berechnen; prüfen, ob bestimmte Punkte innerhalb des Kreises liegen usw.
Grundlagen der Java-Programmierung 49
Einführung in Klassen und Objekte
• Jeder konkrete Kreis besitzt individuelle Werte (d.h. einen konkreten Mittelpunkt und Radius), aber als Klasse betrachtet besitzen Kreise bestimmte gemeinsame Eigenschaften, die in einer Definition zusammengefaßt werden können.
• Zu beachten: die Klassendefinition im folgenden Beispiel 3 enthält Daten und Methoden.
Grundlagen der Java-Programmierung 50
Beispiel 3
public class Circle {public double x, y; // Die Koordinaten des
// Mittelpunktes.public double r; // Der Radius.
/* Methoden zur Ermittlung des Umfangs und der Fläche des Kreises */
public double circumfence() {return 2 * 3.14159 * r;
}public double area() {
return 3.14159 * r*r;}
}
Grundlagen der Java-Programmierung 51
Objekte sind Instanzen einer Klasse
• Um die Circle-Klasse "anwenden" zu können, wird ein konkreter Kreis benötigt.
• Mit anderen Worten: es wird eine Instanz der Klasse Circle benötigt, ein konkretes Circle-Objekt.
Grundlagen der Java-Programmierung 52
Objekte sind Instanzen einer Klasse
• Durch Definition der Circle-Klasse in Java wurde ein neuer Datentyp erzeugt. Nun können Variablen dieses Typs deklariert werden:Circle c;
• Diese Variable c ist aber nur ein Name, der auf ein Kreisobjekt verweist, er ist nicht das Objekt selbst.
• Bei Java müssen alle Objekte dynamisch erzeugt werden, dies geschieht meist mit dem Schlüsselwort new:Circle c;c = new Circle();
Grundlagen der Java-Programmierung 53
Objekte sind Instanzen einer Klasse
• Damit wird eine Instanz des Circle-Objektes - ein Kreisobjekt - erzeugt und der Variable c zugewiesen, die vom Typ Circle ist.
Grundlagen der Java-Programmierung 54
Zugriff auf Objektdaten
• Nachdem nun ein Objekt erzeugt worden ist, können seine Datenfelder verwendet werden:
Circle c = new Circle();
c.x = 2.0;
c.y = 2.0;
c.r = 1.0; /* Initialisiere den Kreis mit dem Mittelpunkt an (2, 2) und dem Radius 1.0 */
Grundlagen der Java-Programmierung 55
Verwendung von Objektmethoden
• Um auf die Methoden eines Objekts zuzugreifen, wird die gleiche Syntax verwendet wie für den Zugriff auf die Daten eines Objektes:
Circle c = new Circle();
double a;
c.r = 2.5;
a = c.area();
Grundlagen der Java-Programmierung 56
public class Circle {public double x, y; // Koordinaten des Mittelpunktespublic double r; // Der Radiuspublic double circumfence() { return 2 * 3.14159 * r; } public double area() { return 3.14159 * r*r;}public static void main(String[] args) {
Circle c = new Circle(); // Erzeuge Objektc.x = 2.0; c.y = 2.0; // Initialisiere Kreisc.r = Double.parseDouble(args[0]); // Radius einlesendouble flaeche, umfang; // Variablendeklarationumfang = c.circumfence(); // Methodenaufruf auf Objekt flaeche = c.area(); // Methodenaufruf auf Objekt System.out.println( "Der Umfang eines Kreises mit einem Radius von " + c.r + " betraegt " + umfang + "\n");System.out.println("Die Flaeche betraegt " + flaeche);
} }
Beispiel 4
Grundlagen der Java-Programmierung 57
Einführung in die Programmierung in JAVAAG SS 2003
Veranstalter: Tim Stockheim <[email protected]>Jochen Franke <[email protected]>Daniel Beimborn <[email protected]
frankfurt.de>
Donnerstag 14.00 – 16.00 Uhr – Kleiner PC PoolEinheit III
Grundlagen der Java-Programmierung 58
Packages
• Packages als Mittel, um Klassen zu strukturieren
• Jede Klasse in Java ist Bestandteil eines Packages
• Vollständiger Klassenname: Paket.KlassennameBsp. java.lang.Integer
• Umgekehrte Domainnamen als Paketnamen
• Durch Punkte getrennte Namensbestandteile geben jeweils Unterverzeichnisse anBsp: com.sun.image.codec.jpeg -> com/sun/image/codec/jpeg
• Zugriff auf Klassen anderer Packages nur erlaubt, wenn Zielklasse als public definiert ist
Grundlagen der Java-Programmierung 59
Beispiele für Packages
• java.lang -> Elementare Sprachunterstützung
• java.math -> Fliesskommaarithmetik
• java.util -> Diverse Hilfsklassen
• java.net -> Netzwerkunterstützung
• java.sql -> Datenbankzugriff
• java.io -> Bildschirm und Datei I/O
Grundlagen der Java-Programmierung 60
Eclipse als IDE
Grundlagen der Java-Programmierung 61
Interfaces
• Keine Mehrfachvererbung in Java• Eine Klasse kann nicht von zwei Klassen
gleichzeitig abgeleitet werden• Interfaces, um Schnittstellendefinitionen zu
vererben• Interfaces enthalten ausschließlich abstrakte
Methoden und Klassen• Klassen müssen ein Interface implementieren
Grundlagen der Java-Programmierung 62
Interface - Beispiel
• Definition eines Interfaces• Statt class wird das Schlüsselwort interface
verwendet
public interface Groesse{
public int laenge();
public int breite();
public int hoehe();
}
Grundlagen der Java-Programmierung 63
Interface - Beispiel
• Implementierung des Interfaces durch eine Klasse
public class Auto implements Groesse{ public int laenge(){ return 465; } public int hoehe(){ return 186; } public int breite(){ return 195; }}
Grundlagen der Java-Programmierung 64
Interfaces - Nutzen
• Eine Interface-Variable ist kompatibel zu allen Klassen, die ein solches Interface implementieren
• Oder anders: Klassen, die ein bestimmtes Interface implementieren sind zu dem Datentyp des Interfaces kompatibel
• Beispiel Vergleich von Äpfeln, Birnen und Autos -> Eclipse
Grundlagen der Java-Programmierung 65
Einführung in die Programmierung in JAVAAG SS 2003
Veranstalter: Tim Stockheim <[email protected]>Jochen Franke <[email protected]>Daniel Beimborn <[email protected]
frankfurt.de>
Donnerstag 14.00 – 16.00 Uhr – Kleiner PC PoolEinheit IV
Grundlagen der Java-Programmierung 66
JAVA: Exception Handling
• Ausnahmebehandlung erfolgt in Java durch Exceptions und Errors beide Subtyp von Throwable
• Exceptions werden abgefangen durch Verwendung der Schlüsselworte try und catch
• Errors werden nicht abgefangen(führen zu Programmabbruch)
Grundlagen der Java-Programmierung 67
Beispiel 6
java.io.File f = null;java.io.FileOutputStream stream = null;file = new File( "../daten/", "test.txt");
try { stream = new java.io.FileOutputStream( file);
} catch ( java.io.FileNotFoundException e) {System.out.println(e);
}
Grundlagen der Java-Programmierung 68
Beispiel 7
java.io.OutputStreamWriter oWriter = new
java.io.OutputStreamWriter( stream);java.io.BufferedWriter bWriter =
new java.io.BufferedWriter( oWriter);try {
bWriter.write('My first line!\n');bWriter.flush();
} catch ( java.io.IOException e) { System.out.println(e); }
}
Grundlagen der Java-Programmierung 69
JAVA: Pakete
• Zusammenfassung ähnlicher Klassen in Paketen. (z.B.: java.io.File, java.io.FileReader, java.io.FileWriter, …)
• Zugriff verkürzt durch import-Anweisung• Referenzierung ganzer Pakete durch *
(Wildcard)
Grundlagen der Java-Programmierung 70
JAVA: Pakete
• Beispiel:
import java.io.File; oderimport java.io.*;
class NewFile {NewFile ( Sting name ) {
File nf = new File( name);}
}
Grundlagen der Java-Programmierung 71
JAVA-Schlussbemerkung
• Dieser Teil der Vorlesung stellte lediglich eine kurze Einführung in Java dar.
• Im Vordergrund die für JADE benötigten Konzepte.
• Vertiefung durch Übung und eigene Nachbearbeitung
Grundlagen der Java-Programmierung 72
JAVA-Beispiel
public static void main(String[] args){int max = Integer.parseInt( args[0]);int a = 1, b = 1, c = 0;DecimalFormat df = new DecimalFormat();df.setMaximumFractionDigits(6);do {
double d = a; d /= b;System.out.println(
"A = "+a+" B = "+b+" A/B= "+df.format( d));
c = a+b;a = b;b = c;
} while ( b<=max);
}
Grundlagen der Java-Programmierung 73
JAVA-Aufgabe
Entwickeln sie ein Programm, welches die Primzahlen von 2 bis zu einer vorgegebenen Zahl ausgibt.
java Prim 200
2 3 5 7 ....