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í.