Sobes.tech
Junior — Middle

Jaké je maximální množství abstraktních tříd, které může jedna třída implementovat v objektově orientovaném systému?

sobes.tech AI

Odpověď od AI

V jazyce C# může třída dědit pouze od jedné abstraktní třídy, protože vícenásobné dědění tříd není podporováno. Nicméně třída může implementovat více rozhraní.

Příklad:

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

interface IFlyable { void Fly(); }
interface ISwimmable { void Swim(); }

class Duck : Animal, IFlyable, ISwimmable
{
    public override void MakeSound() { Console.WriteLine("Quack"); }
    public void Fly() { Console.WriteLine("Flying"); }
    public void Swim() { Console.WriteLine("Swimming"); }
}

Zde třída Duck dědí od abstraktní třídy Animal a implementuje dvě rozhraní.