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