Junior — Middle
შესაძლებელია თუ არა მეთოდის განხორციელების პირდაპირი გამოცხადება ინტერფეისის განსაზღვრაში?
sobes.tech AI
პასუხი AI-სგან
C# 8.0-დან იწყება, ინტერფეისებში შესაძლებელი გახდა მეთოდების პირდაპირი განთავსება მათ განსაზღვრებაში — ამას უწოდებენ "ნაგულისხმევი ინტერფეისის მეთოდებს" (default interface methods). ეს საშუალებას აძლევს ახალი მეთოდების დამატებას ინტერფეისებში არსებული რეალიზაციების დარღვევის გარეშე.
მაგალითი:
public interface ILogger
{
void Log(string message); // ჩვეულებრივი ინტერფეისის მეთოდი
void LogWarning(string message) // ნაგულისხმევი რეალიზაციით მეთოდი
{
Log("Warning: " + message);
}
}
წინა წლებში, ინტერფეისებში შეიძლებოდა მხოლოდ მეთოდების ხელმოწერების გამოცხადება სხეულის გარეშე. ახლა, შესაძლებელია მეთოდის სხეულის დაწერა, რაც ინტერფეისების შესაძლებლობებს ზრდის.