java.sun.com

   JAVA - Applikationen - Grundlagen


 Startseite
 Applikationen

 Indexverzeichnis


JAVA - Applikationen - Grundlagen

Was sind Applikationen und wozu brauche ich sie?
Vererbung
Wie kann man Applikationen ausführen?
Aufbau einer Applikation

  Seitenende


Was sind Applikationen und wozu brauche ich sie?

Für Applikationen brauche ich keinen Browser (wie bei Applets), um sie starten zu können. Applikationen laufen wie z.B. Word, Excel usw. eigenständig ab.
In der Regel sind Applikationen als Frame angelegt. Ein Frame ist nichts anderes als ein Rahmen oder auch Fenster, in dem ich alles anzeige.

Applikationen werden vor allem für nicht-Internet-Anwendungen genutzt. Sie können auf jedem System laufen, da Java plattformunabhängig ist. Der Vorteil von Applikationen ist der, daß kein zusätzliches Programm benötigt wird, um die Programme ausführen zu können (außer dem JDK).

Um so eine Applikation zum Leben erwecken zu können muß zumindest ein JDK installiert und die Klassen-Bibliothek vorhanden sein. Bei Betriebssystemen, die mit DOS arbeiten (dazu zählt auch Windows 95) muß dazu in der Autoexec.bat als Pfad das entsprechende Verzeichnis eingestellt sein:
Beispiel: 

...
@ECHO OFF
PATH = C:\DOS;C:\WINDOWS;C:\Java\JDK1.1.7\BIN;C:\Java\JDK1.1.7\SRC
SET TEMP=C:\DOS
...

Bei älteren JDK-Versionen wurden diese Einträge automatisch vorgenommen. Bei den neueren Versionen muß man sie selbst hinzufügen.

Sofern das BIN-Verzeichnis nicht angegeben wurde, muß die Java.EXE in das entsprechende Verzeichnis kopiert werden, wo die auszuführende class-Datei liegt.

  Seitenanfang


Vererbung

Die Klasse java.awt.Frame ist von der Klasse java.awt.Window abgeleitet und erbt somit all ihre Merkmale.

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame

Die Klasse, die für die Fenster zuständig ist, heißt java.awt.Frame (Frame=Rahmen). Sie ist von der Klasse java.awt.Window abgeleitet. Der Unterschied zur Window-Klasse ist, daß bei der Frame-Klasse die Fenster einen Rahmen, eine Titelleiste und optional (= wahlweise) ein Menü besitzen.

  Seitenanfang


Wie kann man Applikationen ausführen?

Eine Applikation wird mit dem Interpreter ausgeführt. Der Interpreter heißt JAVA.EXE. Er befindet sich im BIN-Verzeichnis des JDK. Der Interpreter benötigt wie der Appletviewer eine class-Datei. Diese class-Datei muß vorher mit einem Compiler (JAVAC.EXE) aus einer "Textdatei" mit dem Anhang *.java (z.B. Fenster.java) erzeugt worden sein.


  Seitenanfang


Aufbau einer Applikation

BeispielProgrammbeispiel:
import java.awt.*;
import java.awt.event.*;

class Fenster extends java.awt.Frame{

public static void main(String[] args) {
  Frame f1 = new Fenster();
  f1.resize(300,200); 
  f1.show();
}

public boolean handleEvent(Event e) {
  if (e.id == Event.WINDOW_DESTROY)
  System.exit(0);
  return super.handleEvent(e);
}
}

Die Klasse heißt Fenster und erbt alle Eigenschaften der Klasse java.awt.Frame.
Die main-Methode ist mit der start-Methode bei den Applets vergleichbar. Um ein Fenster zu erzeugen, muß man als erstes ein Frame-Objekt anlegen: Frame f1 = new Fenster(); "Fenster" bezieht sich hierbei auf den Klassennamen. Mit f1.resize(300,200) wird die Größe des Fensters bestimmt und mit f1.show() wird das Fenster angezeigt.
resize() ist in der Klasse java.awt.Component und show() in der Klasse java.awt.Window enthalten. Da wir bereits wissen, daß Frame von Window abstammt und Window von Container und Container von Component, hat die Klasse java.awt.Frame alle deren Methoden.

Achtung! Die Methoden resize() wurde in den neueren JDK-Versionen durch die Methode setSize() ersetzt. Ebenso wurde handleEvent() durch eine Reihe anderer Events ersetzt. Beim Compilieren kommt deshalb meistens die Meldung "... deprecated ..." mit dem Hinweis, beim Compilieren sich die entsprechenden Methoden anzeigen zu lassen. Dies geschieht mit der Compiler-Option -deprecation, z.B. Javac.exe Fenster.java -deprecation
Deprecated bedeutet soviel wie abgelehnt, mißbilligt.
Das Problem an der Geschichte ist, daß z.B. bei Applet die Browser nur mit der JDK-Version 1.1.5 arbeiten. In dieser Version sind viele der neuen Methoden des JDK 1.2 noch nicht enthalten. Zur Beruhigung: deprecated heißt nicht, daß es die Methoden überhaupt nicht mehr gibt. Dieser Hinweis weist nur auf eine Methode, die wesentlich effizienter arbeitet und auch von späteren JDK-Versionen unterstüzt wird.

Zumindestens haben wir bisher ein Fenster erzeugt. Wenn ich es wieder schließen möchte, muß ich in JAVA (leider) auch sagen, wie es zu schließen ist. Wenn ich nämlich die Methode handleEvent mit den entsprechenden Anweisungen für das Schließen des Fensters vergeßt, hilft nur noch ein Warmstart (STRG+ALT+Entf), um das Programm zu beenden.

 
weiter:
zurück:
  Applikationen-Beispiel
  Applet-Beispiel
  Seitenanfang © 1999-2001  Brit Schröter