Sobes.tech
Junior — Middle

Interfeys ta'rifi ichida metodning amalga oshirilishini bevosita e'lon qilish mumkinmi?

sobes.tech AI

AIdan javob

C# 8.0 дан тушида, интерфейсларда методларни тўғридан-тўғри уларнинг таърифларида эълон қилиш имконияти пайдо бўлди — бу "таърифлар билан амалга ошириш" (default interface methods) деб аталади. Бу мавжуд амалга оширишларни бузмай, янги методларни интерфейсларга қўшишга imkon беради.

Масалан:

public interface ILogger
{
    void Log(string message); // оддий интерфейс методу

    void LogWarning(string message) // таъриф билан амалга ошириш
    {
        Log("Warning: " + message);
    }
}

Эскироқда, интерфейсларда фақатгина тана бўлмаган метод имзоларини эълон қилиш мумкин эди. Энди, метод тана ёзилиши мумкин, бу интерфейсларнинг имкониятларини кенгайтирмоқда.