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