Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Classes Dérivées | Essentiels de la POO
C# au-delà des Bases
course content

Contenu du cours

C# au-delà des Bases

C# au-delà des Bases

1. Structures Supplémentaires et Gestion des Fichiers
2. Structures et Énumérateurs
3. Introduction à la Programmation Orientée Objet (POO)
4. Essentiels de la POO
5. Principes de la POO

book
Classes Dérivées

Quand nous disons qu'une classe est dérivée d'une autre classe, cela signifie qu'elle possède tous les champs et méthodes de la classe parente et en plus, la classe dérivée peut également contenir des champs et méthodes supplémentaires.

La syntaxe pour créer une classe héritée est la suivante:

cs

index

copy
1234567891011
// Base class (parent class) public class BaseClass { // Fields and methods of the base class } // Derived class (child class) public class DerivedClass : BaseClass { // Additional fields and methods specific to the derived class }

Voici un exemple avec du code concret :

cs

index

copy
12345678910111213141516171819202122232425262728293031323334353637
using System; // Base class (parent class) public class Animal { public string Name; public void Eat() { Console.WriteLine($"{Name} is eating."); } } // Derived class (child class) public class Dog : Animal { public void Bark() { Console.WriteLine($"{Name} is barking."); } } class ConsoleApp { static void Main() { // Creating an instance of the derived class Dog myDog = new Dog(); myDog.Name = "Buddy"; // Using inherited method from the base class myDog.Eat(); // Using method specific to the derived class myDog.Bark(); } }

Dans cet exemple, Dog est la classe dérivée, héritant de la classe de base Animal. La classe Dog a accès à la propriété Name et à la méthode Eat de la classe Animal. De plus, elle introduit une nouvelle méthode, Bark, qui est spécifique à la classe Dog.

Comme illustré dans le diagramme, il peut y avoir des cas où une classe hérite d'une classe qui est déjà une classe d'une autre :

cs

index

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445
using System; // Base class public class Animal { public void Eat() { Console.WriteLine("Animal is eating."); } } // Intermediate class inheriting from Animal public class Mammal : Animal { public void GiveBirth() { Console.WriteLine("Mammal is giving birth."); } } // Derived class inheriting from Mammal public class Dog : Mammal { public void Bark() { Console.WriteLine("Dog is barking."); } } class Program { static void Main() { Dog myDog = new Dog(); // Methods from the base class myDog.Eat(); // Methods from the intermediate class myDog.GiveBirth(); // Methods from the derived class myDog.Bark(); } }

Dans un tel cas, la classe au niveau le plus élevé est appelée la Super Classe. Dans ce cas, Animal est la super classe. Un tel cas où il y a plusieurs niveaux d'héritage est appelé Héritage Multi-Niveaux.

1. En C#, quel mot-clé ou symbole est utilisé pour déclarer une classe dérivée ?

2. Dans l'héritage multi-niveaux, comment s'appelle la classe au sommet ?

3. L'héritage multi-niveaux est-il possible en C# ?

En C#, quel mot-clé ou symbole est utilisé pour déclarer une classe dérivée ?

En C#, quel mot-clé ou symbole est utilisé pour déclarer une classe dérivée ?

Sélectionnez la réponse correcte

Dans l'héritage multi-niveaux, comment s'appelle la classe au sommet ?

Dans l'héritage multi-niveaux, comment s'appelle la classe au sommet ?

Sélectionnez la réponse correcte

L'héritage multi-niveaux est-il possible en C# ?

L'héritage multi-niveaux est-il possible en C# ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1
We're sorry to hear that something went wrong. What happened?
some-alt