Pratique de l'Abstraction
Dans cette tâche, vous recevez un code que vous connaissez peut-être déjà, car nous avons examiné un code similaire dans plusieurs chapitres précédents. Il contient une méthode surchargée appelée MakeSound
.
Votre tâche consiste à convertir la classe Animal
en une classe abstraite et la méthode MakeSound
en une méthode abstract
.
Il ne devrait y avoir aucun changement dans la sortie du programme après cette modification.
index.cs
using System; class Animal { protected string species; public Animal(string species) { this.species = species; } public virtual void MakeSound() { // Empty Method } public void DisplaySpecies() { Console.WriteLine($"Species: {species}"); } } class Cat : Animal { string furPattern; public Cat(string species, string furPattern) : base(species) { this.furPattern = furPattern; } public override void MakeSound() { Console.WriteLine("Meow! Meow!"); } } class Dog : Animal { float weight; public Dog(string species, float weight) : base(species) { this.weight = weight; } public override void MakeSound() { Console.WriteLine("Woof! Woof!"); } } class ConsoleApp { static void Main() { Animal myCat = new Cat("Feline", "Ginger & White"); Animal myDog = new Dog("Canine", 42.5f); myCat.DisplaySpecies(); myCat.MakeSound(); Console.WriteLine("\n"); myDog.DisplaySpecies(); myDog.MakeSound(); } }
Tout était clair ?
Merci pour vos commentaires !
Section 5. Chapitre 9