Sobes.tech
Junior — Middle

Aké prostriedky jazyka C# sa používajú na implementáciu princípu polymorfizmu?

sobes.tech AI

Odpoveď od AI

V jazyku C# je polymorfizmus realizovaný pomocou:

  • Virtuálnych metód (virtual) a prepisovania (override): umožňujú podtriedam meniť správanie metód základnej triedy.
  • Abstraktných metód a tried (abstract): stanovujú zmluvu, ktorú musia implementovať dedičia.
  • Rozhraní (interface): definujú súbor metód, ktoré musí trieda implementovať, čím zabezpečujú polymorfné správanie.

Príklad:

public abstract class Animal
{
    public abstract void Speak();
}

public class Dog : Animal
{
    public override void Speak()
    {
        Console.WriteLine("Haf haf");
    }
}

public class Cat : Animal
{
    public override void Speak()
    {
        Console.WriteLine("Mňau");
    }
}

// Použitie
Animal animal = new Dog();
animal.Speak(); // Vypíše "Haf haf"

animal = new Cat();
animal.Speak(); // Vypíše "Mňau"

Týmto spôsobom sa rovnaké volanie metódy Speak správa odlišne v závislosti od typu objektu.