Java Applikation --> Applet

Hi!
Meine bisherigen Java-Programme waren immer normale Applikationen und für die Grafik hab ich immer Swing genommen. Jetzt bin ich dabei mich in Applets einzuarbeiten.

Also hatten meine bisherigen Programme folgendes Grundgerüst:
Code:
import ...
public class Prog extends JFrame implements ...
{
    //Definition der Variablen

    public Prog()
    {
        // ...
    }
    //...
    public static void main()
    {
        Prog p = new Prog();
        p.setVisible(true);
    }
}
Ich hab mir dann überlegt wie man das Ganze als Applet zum laufen bringt und ich bin zu folgendem Ergebnis gekommen:
Code:
import ...
public class SchiffeVersenken extends JApplet implements ...
{
    //Definition der Variablen

    public init()
    {
        // ... (Musste noch einige Befehle entfernen, damit alles wieder läuft
    }
    //...
}
Die so erstellten Applets funktionieren auf meinen beiden PCs (WinXP) sowohl im Firefox als auch im IE.

Meine eigentiche Frage: Ist das jetzt extrem schlechter Programmierstil oder kann man eine Applikation so einfach zum Applet machen? ;)

Oder muss ich ein Applet irgendwie grundlegend anders gestalten? (Z.B. noch start(), stop() und destroy() einfügen?)

Gruß, Boar
 
Hallo!

Um deine Frage zu einem Grundgerüst eines Applet zu beantworten.
Normalerweise sieht es so aus:

Code:
import java.applet.*;
import java.awt.*;

public class NameDerKlasse extends Applet {
	
	public void init() {
	}
	
	public void start() {
	}
	
	public void stop() {
	}
	
	public void destroy() {
	}
}

Zum Ablauf:

Beim starten des Applet wird zuerst die init() - Methode aufgerufen. (Initialisieren von Variablen) Ist diese Abgearbeitet, wird die start() - Methode aufgerufen. Spätestens hier setzt der eigentliche Quelltext ein. Sollte das Applet mal verdeckt oder minimiert werden so wird die stop() - Methode aufgerufen. Ob man so was brauch hängt immer ganz davon ab was man programmiert. Die destroy()-Methode wird aufgerufen sobald das Applet in irgendeiner weise geschlossen wird, z.B. auch wenn man im selbigen Browserfenster eine andere Seite aufruft wird diese Routine immer durchlaufen.

Im Endeffekt ist es egal ob du die destroy() - Methode mit dazu schreibst. Ist ursprünglich gedacht um den Speicher mir bestimmten Befehlen wieder zu leeren. Und auch die stop() - Methode sehe ich verhalten. Wer sie brauch kann sie nutzen wer nicht kann sie auch weglassen.

Ein Satz sticht mir aber noch ins Auge :) Und zwar geht es um Globale Variablen. (//Definition der Variablen) Java ist eine reine Objektorientierte Programmiersprache. Auch wenn es um Applets geht sollte man dies nicht vernachlässigen. Das heißt also, arbeite lieber mehr mit Objekten und mit so wenig Variablen wie möglich. Auch sollten Variablen nur übergeben und nicht global angelegt werden.

Weitere Hilfen zu Applet-Programmierung gibt es auch unter www.selfjava.de oder auch hier :)
Hoffe konnte weiterhelfen.

mfg
minzel
 
Zurück
Oben