Java - Applet Basics

Ciao a tutti, futuri sviluppatori Java! Sono entusiasta di intraprendere con voi questo emozionante viaggio nel mondo degli applet Java. Come qualcuno che ha insegnato programmazione per più di un decennio, posso assicurarvi che mentre la strada davanti potrebbe sembrare difficile, è anche incredibilmente gratificante. Allora, mettiamoci all'opera e tuffiamoci dentro!

Java - Applet Basics

Cos'è un Java Applet?

Prima di iniziare a programmare, cerchiamo di capire cos'è esattamente un applet. Pensate a un applet come a un piccolo programma Java che può essere integrato in una pagina web. È come una mini applicazione che si esegue all'interno del vostro browser, portando interattività e contenuti dinamici a pagine HTML altrimenti statiche.

Ciclo di Vita di un Applet in Java

Ogni applet attraversa una serie di fasi durante la sua vita. Capire questo ciclo di vita è fondamentale per sviluppare applet efficaci. Analizziamo:

  1. Inizializzazione
  2. Avvio
  3. Esecuzione
  4. Arresto
  5. Distruzione

Flusso del Ciclo di Vita di un Java Applet

Per meglio visualizzare questo flusso, esaminiamo una tabella che elenca i metodi chiamati durante ogni fase:

Fase Metodo Chiamato
Inizializzazione init()
Avvio start()
Esecuzione paint()
Arresto stop()
Distruzione destroy()

Ora, esploriamo ciascuna di queste fasi con alcuni esempi di codice.

Un Semplice Java Applet "Hello, World"

Iniziamo con l'esempio classico "Hello, World". Questo ci aiuterà a comprendere la struttura di base di un applet.

import java.applet.Applet;
import java.awt.Graphics;

public class HelloWorldApplet extends Applet {
public void paint(Graphics g) {
g.drawString("Hello, World!", 50, 25);
}
}

Analizziamo questo codice:

  1. Importiamo le classi necessarie dai pacchetti java.applet e java.awt.
  2. La nostra classe HelloWorldApplet estende la classe Applet.
  3. Sovrascriviamo il metodo paint per disegnare il nostro messaggio "Hello, World!".

La Classe Applet

La classe Applet è la superclasse di tutti gli applet. Fornisce un framework per l'esecuzione degli applet, inclusi metodi per l'inizializzazione, l'avvio, l'arresto e la distruzione dell'applet. Esaminiamo un esempio più completo:

import java.applet.Applet;
import java.awt.Graphics;

public class LifeCycleApplet extends Applet {
String message = "";

public void init() {
message += "Initializing... ";
}

public void start() {
message += "Starting... ";
}

public void stop() {
message += "Stopping... ";
}

public void destroy() {
message += "Destroying... ";
}

public void paint(Graphics g) {
g.drawString(message, 20, 20);
}
}

Questo applet dimostra tutti i metodi del ciclo di vita. Ogni metodo aggiunge alla stringa message, che viene poi visualizzata nel metodo paint.

Esecuzione di un Applet

Per eseguire un applet, dobbiamo integrarlo in una pagina HTML. Ecco come fare:

<html>
<body>
<applet code="LifeCycleApplet.class" width="300" height="100">
Your browser does not support the <code>applet</code> tag.
</applet>
</body>
</html>

Ricezione dei Parametri dell'Applet

Gli applet possono ricevere parametri dalla pagina HTML. Questo permette una maggiore flessibilità nel comportamento dell'applet. Vediamo come:

import java.applet.Applet;
import java.awt.Graphics;

public class ParameterApplet extends Applet {
public void paint(Graphics g) {
String name = getParameter("name");
g.drawString("Hello, " + name + "!", 50, 25);
}
}

E nella HTML:

<applet code="ParameterApplet.class" width="300" height="100">
<param name="name" value="Alice">
</applet>

Gestione degli Eventi

Gli applet possono rispondere alle interazioni dell'utente. Creiamo un semplice applet con un pulsante cliccabile:

import java.applet.Applet;
import java.awt.Button;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ButtonApplet extends Applet implements ActionListener {
Button b;
String message = "";

public void init() {
b = new Button("Click me!");
add(b);
b.addActionListener(this);
}

public void actionPerformed(ActionEvent e) {
message = "Button clicked!";
repaint();
}

public void paint(Graphics g) {
g.drawString(message, 50, 50);
}
}

Questo applet crea un pulsante e risponde ai clic aggiornando il messaggio.

Visualizzazione di Immagini

Gli applet possono anche visualizzare immagini. Ecco un esempio semplice:

import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Image;

public class ImageApplet extends Applet {
Image img;

public void init() {
img = getImage(getDocumentBase(), "myimage.jpg");
}

public void paint(Graphics g) {
g.drawImage(img, 0, 0, this);
}
}

Questo applet carica un'immagine dalla stessa directory della pagina HTML e la visualizza.

Riproduzione di Audio

Infine, esaminiamo come gli applet possono riprodurre audio:

import java.applet.Applet;
import java.applet.AudioClip;

public class AudioApplet extends Applet {
AudioClip clip;

public void init() {
clip = getAudioClip(getCodeBase(), "mysound.au");
}

public void start() {
clip.play();
}

public void stop() {
clip.stop();
}
}

Questo applet carica un file audio e lo riproduce quando l'applet parte, fermandosi quando l'applet si arresta.

Eccoci, ragazzi! Abbiamo coperto le basi degli applet Java, dal loro ciclo di vita alla gestione degli eventi, alla visualizzazione di immagini e alla riproduzione di audio. Ricordate, la pratica rende perfetti, quindi non avete paura di sperimentare con questi esempi e creare i vostri applet. Buon codice!

Credits: Image by storyset