Sobes.tech
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);
    }
}

წინა წლებში, ინტერფეისებში შეიძლებოდა მხოლოდ მეთოდების ხელმოწერების გამოცხადება სხეულის გარეშე. ახლა, შესაძლებელია მეთოდის სხეულის დაწერა, რაც ინტერფეისების შესაძლებლობებს ზრდის.