Junior — Middle
Je možné deklarovať implementáciu metódy priamo v definícii rozhrania?
sobes.tech AI
Odpoveď od AI
Od C# 8.0, v rozhraniach bola zavedená možnosť deklarovať implementácie metód priamo v ich definícii — nazýva sa "metódy s predvolenou implementáciou" (default interface methods). To umožňuje pridávať nové metódy do rozhraní bez narušenia existujúcich implementácií.
Príklad:
public interface ILogger
{
void Log(string message); // bežná metóda rozhrania
void LogWarning(string message) // metóda s predvolenou implementáciou
{
Log("Warning: " + message);
}
}
Skôr bolo možné v rozhraniach deklarovať iba podpisy metód bez tela. Teraz je možné písať telo metódy, čo rozširuje možnosti rozhraní.