4
19
Plus d’infos sur les méthodes
statiques
Les méthodes statiques aussi nommées méthodes de classe sont
appelées par l’intermédiaire du nom de classe plutôt qu’à travers un
objet particulier.
Par exemple , les méthodes de la classe Math sont statiques.
Pour créer une méthode statique, nous définissons la méthode à l’aide
du mot clé static .
Les méthodes statiques ne peuvent utiliser des variables d’instance,
les variables d’instance n’étant créées qu’une fois les objets instanciés.
public static int abs(int num);
20
Plus d’infos sur les méthodes
statiques :un exemple
public static int triple (int num)
{int result;
result = num * 3;
return result;
}
class Helper
class Helper
Puisqu’étant
Puisqu’étant statique
statique, la
, la méthode peut être appelée ainsi
méthode peut être appelée ainsi:
:
value = Helper.triple (5);
21
Méthodes statiques and
variables: CountInstances.java
public class CountInstances
{public static void main ( String[] args)
{Slogan obj;
obj = new Slogan("Hello world");
obj = new Slogan("Talk is cheap.");
obj = new Slogan("Don't worry, be happy.");
System.out.println("Slogans created: " + Slogan.getCount());
}
}
22
Méthodes statiques and
variables: Slogan.java
public class Slogan
{private String phrase;
public static int count = 0;
//
the constructor
public Slogan (String str)
{phrase = str;
count++;
}
//
returns the number of objects of this class created
public static int getCount()
{return count;
}
}
23
Que sont les classes
encapsulantes?
Une classe encapsulante représente un certain type de données
primitif.
Par exemple Integer ageObj = new Integer (20);
utilise la classe Integer pour créer un objet représentant l’entier 20.
Pourquoi ceci ?
Ceci est utile lorsque le programme requiert un objet et non un
type de données primitif
Chaque type de données primitif (TDP) est encapsulé par de telles
classes. Ces classes sont situées dans le package Java.lang, voir
Figure 5.4
TDP Wrapper Class
byte Byte
int Integer
char Character, etc. pour les autres TDPs
24
Quelques méthodes de la
classe Integer : voir p.287
Integer (int value) // constructeur: crée un nouveau objet
Integer
byte byteValue ()
double doubleValue ()
// retourne la valeur de cette objet dans le TDP correspondant
static int ParseInt (String str)
// retourne l’
int
correspondant à la valeur stockée dans la chaîne de
caractères.
static String toBinaryString (int num)
// retourne une chaîne de caractères représentant l’entier dans la
base correspondant à num.