Java Applets

 

Java Applets werden innerhalb eines Webbrowsers oder mit speziellen Tools der Entwicklungsumgebung ausgeführt. Bindet sie einfach in einer HTML – Seite ein (dazu unten mehr).

Da Applets von jeder beliebigen Seite des WWW heruntergeladen werden können um dann auf eurem Computer ausgeführt zu werden, sind bestimmte Sicherheitsvorkehrungen getroffen worden:

Dies gilt für den Netscape Navigator und den Microsoft Explorer. Andere Browser und Tools ermöglichen evtl. eine Konfiguration der Sicherheitseinstellungen.

100% Sicherheit bieten Applets natürlich nicht, aber sie machen es schwer.

 

Erstellen von Applets

Bisher habt Ihr immer Java - Anwendungen mit einer main() – Methode geschrieben. Applets besitzen keine main() – Methode, die automatisch beim Start des Programms aufgerufen wird. Statt dessen gibt es einige Methoden, die an verschiedenen Punkten der Ausführung eines Applets aufgerufen werden.

Ihr müßt zuallererst eure Klasse von der Klasse Applet aus dem Paket java.Applet ableiten:

Public class meinApplet extends java.applet.Applet {

//Code des Applets

}

Applets müssen generell als public deklariert werden, da die Klasse Applet selbst public ist.

Initialisieren

Die Initialisierung eines Applets tritt auf, wenn ein Applet geladen wird. Sie kann die Erzeugung der Objekte, die ein Applet benötigt, das Setzen eines Ausgangszustandes, das Laden von Bildern und Schriften oder das Setzen von Parametern umfassen. Um für die Initialisierung des Applets Verhaltensweisen zu definieren, überschreibt die init() – Methode:

Public void init() {

//Code der Methode

}

Starten

Nach dem Initialisieren eines Applets wird es gestartet. Ein Applet kann auch gestartet werden, nachdem es zuvor gestoppt wurde. Ein Applet wird beispielsweise gestoppt, wenn der Benutzer einen Link zu einer anderen Seite verfolgt; kehrt er anschließend zur vorherigen Seite zurück, wird das Applet wieder gestartet:

Public void start() {

//Code der Methode

}

Stoppen

Stoppen und Starten gehen Hand in Hand. Ein Applet wird gestoppt, wenn der Benutzer die Seite mit dem Applet verläßt bzw. wenn das Applet manuell durch den Aufruf der stop() – Methode angehalten wird:

Public void stop() {

//Code der Methode

}

Zerstören

Durch die destroy() – Methode kann ein Applet hinter sich aufräumen, bevor es oder der Browser beendet wird, z.B. um laufende Threads zu beenden oder andere laufende Objekte freizugeben:

Public void destroy() {

//Code der Methode

}

Java verfügt über eine automatische Speicherfreigabe, den Garbage Collector, der für uns die Speicherverwaltung übernimmt. Aus diesem Grund wird die Methode destroy() nur selten verwendet.

Zeichnen

Um etwas ausgeben zu können brauchen wir die Methode paint() mit einem Argument, das vom Browser übergeben wird so das wir uns nicht darum zu kümmern brauchen:

Public void paint(Graphics g) {

//Code der Methode

}

Das Einzige was Ihr noch machen müßt, ist die Klasse Graphics zu importieren:

import java.awt.Graphics;

Applet die Erste

Kermit, der diese Arbeitsblätter als Erster in die Hände bekommen hat, hat auch gleich ein Applet erstellt:

import java.awt.Graphics;

import java.awt.Font; //Er will einen bestimmten Zeichensatz verwenden

import java.awt.Color; //und eine bestimmte Farbe

public class Palindrome extends java.applet.Applet {

Font f = new Font("TimesRoman", Font.BOLT, 36);

public void paint(Graphics screen) {

screen.setFont(f);

screen.setColor(Color.red);

screen.drawString("Ein Neger mit Gazelle zagt im Regen nie.", 5, 40);

}

}

Die Zahlen 5, 40 in der drawString() – Methode bezeichnen als x-y Koordinaten die obere linke Ecke des Applets.

Kermit will nun das ganze in eine Webseite einfügen:

HTML

<HTML>

<HEAD>

<TITLE>The Palindrome Page</TITLE>

</HEAD>

<BODY>

Wozu sind eigentlich Palindroms gut?

<BR>

<APPLET CODE="Palindrome.class" WIDTH=700 HEIGHT=100>

</APPLET>

</BODY>

</HTML>

 

Nachdem er das eingegeben und zusammen mit seinem Applet abgespeichert hat kann er es kaum erwarten, Piggy sein neustes Werk unter den Rüssel zu reiben.