Junior — Middle
Vai ir iespējams tieši deklarēt metodes realizāciju interfeisa definīcijā?
sobes.tech AI
Atbilde no AI
Sākot ar C# 8.0, interfeisos ir tās definīcijā ir iespējams tieši deklarēt metožu realizācijas — to sauc par "noklusējuma interfeisa metožu" (default interface methods). Tas ļauj pievienot jaunas metodes interfeisiem, nesabojājot esošās realizācijas.
Piemērs:
public interface ILogger
{
void Log(string message); // parasts interfeisa metodes deklarācija
void LogWarning(string message) // ar noklusējuma realizāciju
{
Log("Warning: " + message);
}
}
Iepriekš interfeisos varēja deklarēt tikai metožu parakstus bez ķermeņa. Tagad ir iespējams rakstīt metodes ķermeni, kas paplašina interfeisu iespējas.