Java Einführung - Kursunterlage
Hubert Partl
Zentraler Informatikdienst
Universität für Bodenkultur Wien
Version:
Juni 1999
Überblick
-
Inhalt
-
Copyright
-
Referenzen
Vorwort
Die vorliegende Java-Einführung beschreibt nur kurz die wichtigsten
Eigenschaften von Java, die für die meisten Anwendungen benötigt
werden. Für darüber hinaus gehende spezielle Features
und Anwendungen sowie für ausführlichere Informationen
wird auf die
Referenzen und auf die
Online-Dokumentation
verwiesen.
Die vorliegende Fassung beschreibt Java ab der Version JDK 1.1.
Die Java-Einführung besteht aus zwei Teilen:
der eigentlichen
Kursunterlage
mit Beispielen und Übungsaufgaben, und
Musterlösungen
zu den Übungsaufgaben.
Wenn Sie Java erfolgreich lernen wollen, empfehle ich Ihnen dringend,
die Musterlösungen erst dann auszudrucken und anzusehen,
wenn Sie bereits alle Übungsbeispiele selbständig
fertig programmiert haben, also erst am Ende des Kurses.
Wenn Ihnen meine Java-Einführung gefällt, sagen Sie
es weiter. Wenn Sie darin Fehler entdecken oder Verbesserungsvorschläge
haben, sagen Sie es bitte mir per E-Mail an
partl@mail.boku.ac.at
- ich freue mich immer über solche Hilfe.
Ich danke
Gudio Krüger, Stefan Zeiger, Ralf Isken,
Peter van der Linden, Roedy Green
und allen anderen Internet-Surfern,
die mir gute Tips gegeben und Tippfehler korrigiert haben,
sowie den Teilnehmern an meinen Java-Schulungen,
die mir interessante Fragen gestellt haben.
Hubert Partl
Überblick
Vorwort
Grundlagen
Was ist Java?
Software und Online-Dokumentation
Syntax und Statements
Objekte und Klassen
Fehlerbehandlung (Exceptions)
User-Interfaces
Graphical User Interfaces (GUI)
Applets
Threads
System-Interfaces
Ein-Ausgabe (IO)
Networking
System-Funktionen
Datenbanken
Referenzen
Beilage: Musterlösungen der Übungsaufgaben
Inhaltsverzeichnis
Vorwort
Grundlagen
Was ist Java?
Insel, Kaffee oder Programmiersprache
Applikationen (application)
Applets
JavaScript ist nicht Java
Software und Online-Dokumentation
Java Development Kit (JDK)
Environment-Variable
Filenamen
Java Compiler (javac)
Java Bytecode Interpreter (java)
Web-Browser und Appletviewer
Online-Dokumentation (API)
Software-Tools
Vorgangsweise
Beispiel: Einfache HelloWorld-Applikation
Übung: HelloWorld-Applikation
Übung: Online-Dokumentation
Syntax und Statements
Grundbegriffe der Programmierung
Namenskonventionen
Reservierte Wörter
Datentypen
Konstante (Literals)
Deklarationen und Anfangswerte
Referenzen (reference) auf Objekte oder Strings
Garbage Collector
Felder (array)
Ausdrücke (expression) und Operatoren
Text-Operationen (String)
Funktionen (Math)
Statements und Blöcke
Kommentare
if und else
for
while und do
switch und case
break und continue
System.exit
Beispiele für einfache Programme
Fehlersuche und Fehlerbehebung (Debugging)
Übung: einfaches Rechenbeispiel Quadratzahlen
Übung: Rechenbeispiel Sparbuch
Objekte und Klassen
Objekt-Orientierung
Klassen (class)
Datenfelder (member field)
Konstruktoren (constructor)
Methoden (method)
Überladen (overload)
statische Methoden (static)
main-Methode
Beispiel: objekt-orientierte HelloWorld-Applikation
Einkapselung (Encapsulation, Data Hiding)
Beispiel: schlechte Datums-Klasse
Beispiel: bessere Datums-Klasse
Objekt-orientierte Analyse und Design
Beispiel: Analyse Schulungen
Übung: Analyse Bücherregal
Vererbung (Inheritance, Polymorphismus, override)
Mehrfache Vererbung, Interfaces, abstrakte Klassen
Beispiel: Katzenmusik
Innere Klassen (inner class)
Zugriff auf Objekte von anderen Klassen
Packages und import
Fehlerbehandlung (Exceptions)
Fehler erkennen (throw exception)
Fehler abfangen (try, catch)
Mathematische Fehler
Übung: erweitertes Rechenbeispiel Sparbuch
User-Interfaces
Graphical User Interfaces (GUI)
Abstract Windowing Toolkit (AWT)
AWT-Komponenten (Component)
Swing-Komponenten (JComponent)
Container
Layout-Manager
Farben (Color)
Schriften (Font)
Größenangaben (PreferredSize)
Graphiken (Graphics, paint)
mehrzeilige Texte
Event-Handling
Beispiel: typischer Aufbau einer einfachen GUI-Applikation
Beispiel: typischer Aufbau einer komplexen GUI-Applikation
Übung: einfache GUI-Applikation
Applets
Sicherheit (security, sandbox, signed applets)
HTML-Tags <applet> <object> <embed> <param>
Beispiel: einfaches HelloWorld Applet
Übung: einfaches HelloWorld Applet
Methoden init, start, stop
Größenangabe
Beenden des Applet
Beispiel: typischer Aufbau eines Applet mit Button-Aktionen
Beispiel: typischer Aufbau eines Applet mit Maus-Aktionen
Beispiel: typischer Aufbau eines Applet mit Text-Eingaben
Übung: einfaches Applet: Thermostat
Übung: Applet: einfache Verkehrsampel
Übung: komplexes Applet; Sparbuch
Übung: komplexes Applet: Bäume im Garten
Vermeidung von Flimmern oder Flackern (buffered image)
Uniform Resource Locators (URL)
Bilder (Image, MediaTracker)
Töne (sound, AudioClip)
Parameter
Web-Browser (AppletContext)
Übung: Zwei Applets
Doppelnutzung als Applet und Applikation
Threads
Multithreading, Thread, Runnable
Starten eines Thread (start)
Beenden oder Abbrechen eines Thread
Unterbrechungen (sleep, suspend, resume)
Synchronisierung (join, wait, notify, synchronized)
Beispiel: eine einfache Animation
Übung: einfaches Applet Blinklicht
Übung: erweitertes Applet Verkehrsampel