Les classes et objets sont des éléments essentiels de la programmation orientée objet et ils nous permettent de créer des structures de code modulaires et réutilisables.
JavaScript est un langage de programmation orienté objet. Cela signifie qu'il utilise des classes et des objets pour organiser et structurer le code. Les classes sont des modèles ou des "moules" à partir desquels nous pouvons créer des objets. Les objets sont des instances de ces classes.
En JavaScript, nous pouvons déclarer une classe en utilisant le mot-clé class
. Voici un exemple de déclaration de classe :
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
sayHello() {
console.log(`Bonjour, je m'appelle ${this.name} et j'ai ${this.age} ans.`);
}
}
Dans cet exemple, nous avons déclaré une classe Person
avec un constructeur et une méthode sayHello
.
Le constructeur est appelé lorsqu'un nouvel objet Person
est créé et il initialise les propriétés name
et age
.
La méthode sayHello
affiche un message de salutation avec le nom et l'âge de la personne.
Pour créer un objet à partir d'une classe, nous utilisons le mot-clé new
.
Voici comment créer un objet Person
à partir de la classe Person
que nous avons déclarée précédemment :
const person = new Person("Jean", 25);
Dans cet exemple, nous avons créé un objet person
à partir de la classe Person
avec le nom "Jean"
et l'âge 25
.
Une fois que nous avons créé un objet, nous pouvons accéder à ses propriétés et méthodes à l'aide de la notation par point (`.`)
.
Voici comment accéder aux propriétés et méthodes de l'objet person
que nous avons créé précédemment :
console.log(person.name); // Affiche "Jean"
console.log(person.age); // Affiche 25
person.sayHello(); // Affiche "Bonjour, je m'appelle Jean et j'ai 25 ans."
Dans cet exemple, nous utilisons la notation par point pour accéder à la propriété name
et age
de l'objet
person
sayHello
pour afficher le message de salutation.
En JavaScript, nous pouvons également utiliser l'héritage de classe pour créer de nouvelles classes basées sur une classe existante. La nouvelle classe hérite toutes les propriétés et méthodes de la classe parente et peut ajouter ses propres propriétés et méthodes.
Voici un exemple d'héritage de classe en JavaScript :
class Student extends Person {
constructor(name, age, grade) {
super(name, age);
this.grade = grade;
}
getGrade() {
console.log(`Je suis en ${this.grade}ème année.`);
}
}
Dans cet exemple, nous avons déclaré une classe Student
qui étend la classe Person
en utilisant le mot-clé extends
.
La classe Student
a son propre constructeur qui prend des paramètres supplémentaires (grade)
et appelle également
le constructeur de la classe parente en utilisant le mot-clé super
. La méthode getGrade
est spécifique à la classe Student
.
Maintenant, nous pouvons créer un objet student
à partir de la classe Student
et accéder à ses propriétés et méthodes :
const student = new Student("Alice", 20, 3);
console.log(student.name); // Affiche "Alice"
console.log(student.age); // Affiche 20
console.log(student.grade); // Affiche 3
student.sayHello(); // Affiche "Bonjour, je m'appelle Alice et j'ai 20 ans."
student.getGrade(); // Affiche "Je suis en 3ème année."
Dans cet exemple, nous avons créé un objet student
à partir de la classe Student
avec le nom "Alice"
, l'âge 20
, et la classe 3
.
Nous pouvons accéder aux propriétés et méthodes de la classe Person
ainsi qu'aux propriétés et méthodes spécifiques à la classe Student
.
Ceci conclut notre cours sur la notion des classes et objets en JavaScript. Les classes et objets sont des éléments essentiels de la programmation orientée objet et ils nous permettent de créer des structures de code modulaires et réutilisables.