Dans cette fiche...

<Retour>

Description de l'applet

Difficulté : Résultat
(pas spectaculaire,
mais ça marche quand même !)
Vous avez vu dans la fiche précédente comment créer un objet de base. Comment cet objet peut-il être maintenant utilisé dans une applet ? Votre navigateur n'est pas compatible Java !

 Listing de l'applet

// --------------------------------------------------
// APPLETAVECOBJET : UTILISATION D'UN OBJET
// --------------------------------------------------
import java.applet.*;
// L'applet principale
public class AppletAvecObjet extends Applet
{
	// Déclaration des objets personnalisés
	ObjetDeBase objet1;
	ObjetDeBase objet2;
	// Initialisation de l'applet
	public void init()
	{
		// Initialisation des objets
		objet1 = new ObjetDeBase();
		objet2 = new ObjetDeBase();
	}
}
// L'objet à utiliser
class ObjetDeBase extends Object
{
}

Le listing en détail...

Les lignes non commentées ont déjà été traitées dans les exemples précédents.

// L'objet à utiliser
class ObjetDeBase extends Object
{
}
On retrouve, en bas du listing, la création d'un objet (qui ne fait rien pour l'instant, puisque l'intérieur des accolades est vide).
2 remarques en passant :
  • Comme il a déjà été dit, le extends Object est facultatif. On aurait pu écrire : class ObjetDeBase {}
  • Le listing comporte 2 classes, qui sont pourtant dans un seul fichier texte (nommé AppletAvecObjet.java). C'est donc possible ?
    Oui, à condition de supprimer le mot-clef public qui précède la définition du 2ème objet (ObjetDeBase). Le 2ème objet est ainsi vu comme un objet "secondaire", qui sera utilisé par l'objet principal AppletAvecObjet. Une applet peut bien sûr utiliser plusieurs objets secondaires (on obtient autant de fichiers .class à la compilation).
 
// Déclaration des objets personnalisés
ObjetDeBase objet1;
ObjetDeBase objet2;
Comme l'indique le commentaire (!), on déclare ici 2 objets de type ObjetDeBase. L'un s'appelle objet1, et l'autre, judicieusement, objet2. On aurait bien sûr pu écrire : ObjetDeBase objet1, objet2;

Par analogie, rappelez-vous les : String s1, s2;

Attention : les objets sont déclarés, mais pas encore initialisés (ils ne sont donc pas utilisables pour l'instant, faute de provoquer une NullPointerException).

 
// Initialisation des objets
objet1 = new ObjetDeBase();
objet2 = new ObjetDeBase();
Ici, on initialise chaque objet (on lui donne une existence).
On dit aussi qu'on instancie l'objet. Instancier un objet, c'est, à partir de la classe de l'objet, créer un objet réel, manipulable.
La classe d'un objet est une définition théorique de l'objet, qui peut donner vie à plusieurs instances de l'objet (La classe ObjetDeBase sert à créer 2 objets dans notre exemple).

Pour l'instant, les 2 objets sont vides. L'intérêt ici est seulement de comprendre le squelette des lignes à écrire.
Rendez-vous dans les pages suivantes !

Intégration de l'applet dans la page

Voici le code qui a été utilisé dans cette page HTML pour faire apparaître l'applet :

<applet code="AppletAvecObjet.class" width=250 height=90>
Votre navigateur n'est pas compatible Java !
</applet>

Pour plus de précisions sur l'intégration d'une applet, cliquez ici.