• Aucun résultat trouvé

Les constructeursLes constructeurs……

N/A
N/A
Protected

Academic year: 2022

Partager "Les constructeursLes constructeurs……"

Copied!
1
0
0

Texte intégral

(1)

36

Les constructeurs Les constructeurs … …

Un constructeur est une méthode particulière qui est appelée automatiquement à la création d'un objet et qui permet d'initialiser correctement cet objet.

Le constructeur est appelé lors de l'allocation de l'objet par new (et non lors de la déclaration de la référence).

Un constructeur se reconnaît facilement en Java:

- il porte le même nom que la classe - il n'a pas de type de retour (même pas void)

On peut définir plusieurs constructeurs pour une même classe, s'ils ont une signature différente.

37

Les constructeurs: rôle et d Les constructeurs: rôle et dé éfinition finition

Pour créer un compte, on a deux manières

Compte cpte1 = new Compte(135, "Dupont"); //instanciation avec appel du premier constructeur

Compte cpte2 = new Compte(159, "Martin", 1500); //instanciation avec appel du 2°constructeur

Mais on ne peut pas écrire:

Compte cpte3 = new Compte();

38

public class Compte{

private int numero;

private String nom;

private double solde;

public Compte(int UnNumero, String UnNom){ //1

er

constructeur this.numero = UnNumero;

this.nom = unNom;

this.solde = 0;

}

public Compte (int UnNumero, String UnNom, double SoldeInitial){

//deuxième constructeur this.numero = UnNumero;

this.nom = unNom;

this.solde = SoldeInitial;

} }

Les constructeurs: Exemple Les constructeurs: Exemple

Si aucun constructeur n'est défini explicitement, le compilateur en créé un quand même.

Ce constructeur défini par défaut ne comporte pas de paramètres et initialise tous les attributs à leur valeur par défaut (0 pour les variables numériques, NULL pour les références, "" pour les chaînes de caractères, …).

Mais dès lors qu'un constructeur est défini explicitement, le compilateur n'en créé pas d'autre.

L'utilisateur est obligé, à l'instanciation, de passer les paramètres requis par l'un des constructeurs explicite. Mais le concepteur de la classe peut créer son propre constructeur par défaut (c'est-à-dire sans paramètres).

Même lorsque l'instanciation ne comporte aucun paramètre (appel du constructeur par défaut s'il existe), il faut mettre les parenthèses.

Exemple:

Compte cpte = new Compte();

39

Les constructeurs Les constructeurs

On peut alors instancier un objet de type Compte de la façon suivante:

40

public Compte() // constructeur sans paramètre

{

this.numero = 0;

this.nom = "inconnu";

this.solde = 0;

}

Les constructeurs Les constructeurs

Ajoutons un constructeur sans paramètre à notre classe Compte.

Compte unCompte = new Compte( );

Instanciation d'un objet = déclaration de la référence + allocation en

mémoire + construction (appel d'un constructeur)

Références

Documents relatifs

Les langages C++, JAVA, … permettent d'utiliser le même nom pour plusieurs sous-programmes différents (nombre de paramètres différents ou même nombre de paramètres avec de

Vous devez créer 4 mots de 4/5 lettres (exemple : chien). Réaliser les exercices correspondant

Chaque apport théorique donne lieu à un travail immédiat d’application des stagiaires sur leur propre comptabilité, à l’aide des supports « Guide pratique de clôture », «

8 Soulignant d'un même mouvement la faille éprouvée dans le dire et le geste de sa suture, de sa "reprise" par l'énonciateur, toute forme de dédoublement local du dire par

La conception de la plateforme ouverte de MindSphere on Azure vous permet de compléter votre déploiement IIoT avec des ressources tierces, en évitant de vous limiter à des

Partant d’un argumentaire centré sur les spillover costs, Roos explique que les créanciers sont capables de forcer les États à rembourser leur dette du fait de leur

Lors de l’évaluation d’une variable (dans le corps d’une fonction), si la variable est Locale, sa valeur est prise, sinon si la variable est dans une fonction Englobant, sa valeur

- Les participants retrouvent la classe virtuelle sur l’interface ma cl@sse virtuelle Possibilité d’enregistrer la réunion en « Unifié » (un seul fichier généré)