alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 2008
-
30 mars 2006 à 00:42
cs_nomad56
Messages postés54Date d'inscriptionsamedi 16 avril 2005StatutMembreDernière intervention13 avril 2006
-
1 avril 2006 à 03:13
bonjour,
dans un bouquin, j'ai trouve un code du genre :
class Bird {
{ System.out.print("toto"); } public Bird() { System.out.print("tata"); }
}
qu'est ce que c'est que ce truc en rouge ?
comment et a quel moment ecrit t'on "toto" ?
tucobouch
Messages postés194Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention 1 mai 200950 30 mars 2006 à 01:05
J'avoue ne pas connaitre cette syntaxe... apres tests, je remarque que le code en rouge est appellé juste avant l'appel au constructeur pour toute nouvelle instantiation d'un objet Bird.
Ainsi,
Bird b=new Bird();
affiche: tototata
Si on appelle une fonction statique de la classe, le code en rouge n'est pas executé.
kirua12
Messages postés1155Date d'inscriptionsamedi 17 janvier 2004StatutMembreDernière intervention29 avril 20117 30 mars 2006 à 10:24
Salut,
c'est un bloc d'initialisation qui est appelé avant le constructeur. Cela permet de faire une initialisation par défaut de certains paramètres.
Il existe le même avec le mot static devant qui sera appelé une seule fois lors de l'accès à un membre de la classe
cs_nomad56
Messages postés54Date d'inscriptionsamedi 16 avril 2005StatutMembreDernière intervention13 avril 20061 1 avril 2006 à 03:13
moi si j'étais toi, je laisserai ca de coté, ca ma l'air bizarre comme truc ...
et faire une initialisation par défaut de certains paramètres, personnelement je ferai ca dans les constructeurs moi ( surtout dans le constructeur par défaut )... m'enfin...