Junior — Middle
94
Интерфейсте әдістердің нақты жүзеге асырылуын анықтау мүмкін бе?
Сұралған компаниялар
appfox
AI-дан жауап
sobes.tech AI
C# тілінде 8.0 нұсқасынан бастап интерфейстің ішінде әдістердің іске асыруын анықтау мүмкіндігі пайда болды — бұл әдеттегі интерфейс әдістері (default interface methods) деп аталады.
Бұл интерфейстерге жаңа әдістер қосуға мүмкіндік береді, ал бұрынғы іске асыруларын бұзбай.
Мысал:
public interface ILogger
{
void Log(string message);
void LogError(string message) // әдепкі іске асыру әдісі
{
Log("ҚАТЕЛІ: " + message);
}
}
public class ConsoleLogger : ILogger
{
public void Log(string message)
{
Console.WriteLine(message);
}
}
Осылайша, ConsoleLogger класы LogError әдісін іске асыруы міндетті емес, бірақ ол әдепкі бойынша жұмыс істейді.