5
JavaBean (2/2)
Les JavaBeans sont toutes les classes Java qui respectent un
certains nombre de règles :
ils doivent posséder un constructeur sans paramètre. Celui ci devra initialiser
l'état du bean avec des valeurs par défauts.
ils peuvent définir des propriétés : celles ci sont identifiées par des attributs et
méthodes dont le nom et la signature sont normalisés
ils doivent implémenter l'interface Serializable : ceci est obligatoire pour les
beans qui possèdent une partie graphique pour permettre la sauvegarde de leur
état
ils définissent des méthodes utilisables par les composants extérieurs : elles
doivent être publiques et prévoir une gestion des accès concurrents
ils peuvent émettre des événements en gérant une liste d'écouteurs qui s'y
abonnent via des méthodes dont les noms sont normalisés
Les classes des API graphiques de Java (AWT et Swing) sont des
JavaBeans
6
Propriétés dans un JavaBean
L'accès aux attributs (propriétés) est contrôlé
Attributs toujours privés (ou à la rigueur protégés)
Les attributs peuvent n'avoir qu'un accesseur (ils sont en lecture seule), qu'un
modifieur (ils sont en écriture seule)
Accesseurs et modifieurs sont normalisés
Accesseur : <type_attribut> get<nom_attribut>()
(is<nom_attribut> si l'attribut est booléen)
Modifieur : void set<nom_attribut>(<type_attribut>
<nom_variable>)
Le nom de l'attribut n'est pas forcément celui de la variable qui le contient!
public class GrainDeCafe{
private int poids;
private boolean truc;
...
public int getPoids(){return this.poids;}
public void setPoids(int a){this.poids = a;}
public void getArabica(){return this.truc;}
}