Quelques précisions en algorithmique!

Fermé
clandeur - 22 août 2008 à 16:24
neofenix Messages postés 145 Date d'inscription mercredi 12 avril 2006 Statut Membre Dernière intervention 11 mars 2010 - 22 août 2008 à 16:37
Bonjour,
je vous écris pour avoir quelques éclaircissement en algo!
voilà en fait je suis au rattrapages dans cette matière je pense que beaucoup de doute se sont dissipé pour moi mais deux choses me posent toujours problème!

Je voulais savoir si il y avait un bon "moyen" de choisir ses attributs pour une classe (du style quelles question se poser avant de les choisir) car j'avoue je galère pas mal au moment de les choisir.

Et ma deuxième question est au sujet des constructeurs, en fait à quoi servent-t-ils vraiment?
J'ai bien compris que dans une classe où on utilisera un tableau par exemple ce tableau fera le grand chelem Attributs + constructeur ou dans le constructeur on l'instance et on le remplit (à vide par exemple).

De souvenir j'imagine le constructeurs comme une "méthode" automatiquement exécuté (et exécuté une seule fois) à la création de n'importe quel objet de cette classe (dans une autre classe of course).

Je sais pas si je suis très clair :) mais j'essaye de bien comprendre donc je préfère poser la question!

Merci d'avance si vous pouvez éclairer ma lanterne!

Romain

1 réponse

neofenix Messages postés 145 Date d'inscription mercredi 12 avril 2006 Statut Membre Dernière intervention 11 mars 2010 2
22 août 2008 à 16:37
salut pour ta premiere question je ne vois pas trop ce que tu desires.
pour la seconde ton constructeur permet en effet de definir des valeurs de departs a tes variable de ta classe ( a null par exemple).

un exemple simple:

dans une classe tu a un string nom, prenom et un int age

ton constructeur prend donc le nom de ta classe et: (3cas possible)
1. rien entre parentheses (lorsque tout doit etre mis a null par exemple)
nom=null; prenom=null; age=0;

2. des données entre parentheses
nomdetaclasse(string n, string p, int a)
{
nom=n;
prenom=p;
age=a;
}

3. le type de ta classe (considerons que ta classe c'est personne
Personne(Personne n)
{
this.nom=n.nom;
this.prenom=n.prenom;
this.age=n.age;
}


maintenant quand sont ils utilisés??
ils sont utilisés automatiquement lorsque tu fais appel a "new"
exemple pour les 3 cas:
1. Personne mapersonne= new Personne();
2.string n="nom";
string p="prenom";
int age=1;
Personne mapersonne= new Personne(n,p,a);
3.Personne mapersonne2=new ("monnom","monprenom",1);
Personne mapersonne= new Personne(mapersonne2);


en espérant avoir pu t'aider
1