Menu
Coddy logo textTech

Variables d'instance

Fait partie de la section Programmation Orientée Objet du Journey Dart de Coddy — leçon 7 sur 110.

Les variables d'instance sont des variables déclarées à l'intérieur d'une classe. Chaque objet créé à partir de la classe reçoit sa propre copie de ces variables, indépendante de tous les autres objets.

Déclarez des variables d'instance avec un type et une valeur par défaut facultative :

class Student {
  String school = 'Dart Academy'; // possède une valeur par défaut
  String name = '';               // valeur par défaut vide
  int age = 0;                    // valeur par défaut zéro
}

Les variables avec des valeurs par défaut commencent avec la même valeur pour chaque nouvel objet. Les variables comme name et age commencent vides ou à zéro jusqu'à ce que vous les définissiez.

Utilisez une méthode avec this pour définir les données individuelles de l'objet :

class Student {
  String school = 'Dart Academy';
  String name = '';
  int age = 0;

  void setInfo(String name, int age) {
    this.name = name; // this.name = variable d'instance
    this.age = age;   // this.age  = variable d'instance
  }
}

Créez des étudiants et attribuez leurs données :

Student student1 = Student();
Student student2 = Student();

student1.setInfo('Alice', 20);
student2.setInfo('Bob', 22);

Accédez aux variables d'instance en utilisant l'opérateur point :

print('${student1.name} is ${student1.age} at ${student1.school}');
print('${student2.name} is ${student2.age} at ${student2.school}');

Sortie :

Alice is 20 at Dart Academy
Bob is 22 at Dart Academy

Remarquez que school est le même pour les deux objets car il a une valeur par défaut, tandis que name et age sont uniques à chaque objet car ils ont été définis individuellement via setInfo.

challenge icon

Défi

Facile

Complétez la classe Student dans student.dart :

  1. Déclarez une variable d'instance String school avec la valeur par défaut 'Dart Academy'
  2. Déclarez une variable d'instance String name avec la valeur par défaut ''
  3. Déclarez une variable d'instance int age avec la valeur par défaut 0
  4. Ajoutez une méthode setInfo qui prend String name et int age comme paramètres et les définit sur l'objet en utilisant this

Le fichier driver.dart testera votre classe en créant deux étudiants et en affichant leurs informations (verrouillé).

Aide-mémoire

Les variables d'instance sont des variables déclarées à l'intérieur d'une classe. Chaque objet reçoit sa propre copie de ces variables.

Déclarez les variables d'instance avec un type et une valeur par défaut facultative :

class Student {
  String school = 'Dart Academy'; // possède une valeur par défaut
  String name = '';               // valeur par défaut vide
  int age = 0;                    // valeur par défaut zéro
}

Utilisez une méthode avec this pour définir les données individuelles de l'objet :

class Student {
  String school = 'Dart Academy';
  String name = '';
  int age = 0;

  void setInfo(String name, int age) {
    this.name = name; // this.name = variable d'instance
    this.age = age;   // this.age  = variable d'instance
  }
}

Créez des objets et attribuez leurs données :

Student student1 = Student();
Student student2 = Student();

student1.setInfo('Alice', 20);
student2.setInfo('Bob', 22);

Accédez aux variables d'instance en utilisant l'opérateur point :

print('${student1.name} is ${student1.age} at ${student1.school}');
// Output: Alice is 20 at Dart Academy

Essayez vous-même

import 'student.dart';

void main() {
  Student student1 = Student();
  Student student2 = Student();

  student1.setInfo('Alice', 20);
  student2.setInfo('Bob', 22);

  print('${student1.name} is ${student1.age} at ${student1.school}');
  print('${student2.name} is ${student2.age} at ${student2.school}');
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Programmation Orientée Objet