Programmation Java/Membres
Un livre de Wikibooks.
| Programmation |
| Java |
| Sommaire |
| IHM avec SWING |
| Annexes |
| Modifier ce modèle |
Sections |
[modifier] Introduction
Les membres d'une classe sont les méthodes (traitements) et attributs (données) qui en font partie.
Exemple :
public class Horloge { // Attributs private int heures; private int minutes; private int secondes; //Méthodes public void incrementeHeure() { secondes++; if (secondes==60) { secondes=0; minutes++; if (minutes==60) { minutes=0; heures++; if (heures==24) { heures=0; } } } } protected void afficheHeure() { System.out.println("Il est "+heures+":"+minutes+":"+secondes); } }
Dans cet exemple, la classe Horloge contient 3 attributs servant à représenter l'heure (heures, minutes et secondes) et deux méthodes (incrementeHeure, qui augmente l'heure d'une seconde, et afficheHeure, qui affiche l'heure).
On distingue parmi les méthodes une catégorie particulière, les constructeurs.
[modifier] Déclaration
[modifier] Attribut
La déclaration d'un attribut se fait de la manière suivante :
modificateurs type nom;
[modifier] Constructeur
La déclaration d'un constructeur se fait de la manière suivante :
modificateur d'accès nomDeLaClasse(type et nom des paramètres éventuels) { corps du constructeur }
[modifier] Méthode
La déclaration d'une méthode se fait comme suit :
modificateurs typeDeRetour nom(type et nom des paramètres éventuels) { corps de la méthode }
[modifier] Méthode à nombre de paramètres variable
Java 5 introduit un mécanisme permettant d'écrire des méthodes acceptant un nombre variable d'arguments ("varargs"), alors qu'il fallait passer par un tableau ou autre artifice similaire auparavant. La syntaxe est très similaire à la syntaxe utilisée pour la fonction printf en C (ce qui a permis d'ajouter une méthode printf dans la classe PrintStream, ce qui permet de faire System.out.printf("what ever %d",5);)
Exemple :
public void message(String recette, String... arguments) { System.out.print("ingrédients : "); for (String s : arguments) System.out.println(s); }
[modifier] Initialisateur statique
De plus, il est possible d'ajouter dans les classes des initialisateurs statiques, qui sont des blocs d'instructions précédés du modificateur static, et qui sont exécutés au chargement de la classe, juste après l'initialisation des attributs statiques.
Exemple :
public class Exemple { static { System.out.println("La classe Exemple est chargée"); } }