Hola, te copio una información sobre las diferencias de un applet con una aplicación:
- Los applets no usan el método main de Java que tienen que usar los programas java tradicionales. El método init() del applet es llamado cuando comienza a ejecutarse el applet y ahí debe establecerse la configuración o inicialización. El resto de lo que hace el applet suele depender de variso event listeners que el método init() se encarga de registrar sobre los distintos componentes.
- Los applets no pueden leer o escribir al computador (por motivos de seguridad)
- Los applets no se pueden comunicar con otros servicios de red, excepto con el servidor que lanza el applet
- Los applets no pueden usar librerías de otros lenguajes, cosa que sí se puede hacer dentro de java
¿Cuándo usar el método init? Si no te es necesario, déjalo vacío.
import java.applet.Applet;
import java.awt.*;
// Applet code for the "Hello, world!" example.
// This should be saved in a file named as "HelloWorld.java".
public class HelloWorld extends Applet {
// This method is mandatory, but can be empty (i.e., have no actual code).
public void init() { }
// This method is mandatory, but can be empty.
public void stop() { }
// Print a message on the screen (x=20, y=10).
public void paint(Graphics g) {
g.drawString("Hello, world!", 20,10);
}
}
Un uso típico: usarlo para introducir los event listeners
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
public class HelloMouse extends Applet implements MouseMotionListener, MouseListener {
// The "applet state"
int x = -1;
int y = -1;
Color color = Color.BLACK;
// Register mouse listener here. Mouse listeners can be the
// same class as the applet if the listener methods
// are added.
public void init() {
// Forwared mouse movements to mouseMoved, mouseDragged
addMouseMotionListener(this);
// Forwared mouse clicks.
addMouseListener(this);
}
// This method is mandatory, but can be empty.
public void stop() {}
// Print a message on the screen (x=20, y=10).
public void paint(Graphics g) {
g.setColor(color);
g.drawString("The mouse is at "+x+","+y, 20, 10);
}
public void mouseDragged(MouseEvent e) {
x = e.getX();
y = e.getY();
color = Color.BLUE;
repaint(100); // Repaint after 100 ms,
}
public void mouseMoved(MouseEvent e) {
x = e.getX();
y = e.getY();
color = Color.BLACK;
repaint(100); // Repaint after 100 ms, }
}
public void mouseClicked(MouseEvent e) {
color = Color.RED;
repaint(100);
}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
}
Saludos