Junior — Middle
Можете ли да обясните смисъла на интерфейса в обектно-ориентираното програмиране?
sobes.tech AI
Отговор от AI
Интерфейсът в обектно-ориентираното програмиране е договор, който определя набор от методи без тяхната реализация. Класовете, които реализират интерфейса, са задължени да предоставят конкретна реализация на тези методи.
Интерфейсите позволяват:
- Да дефинират общи възможности за различни класове.
- Да осигуряват полиморфизъм — обекти от различни класове могат да се използват чрез общ интерфейс.
- Да разделят дефиницията и реализацията, което подобрява модулността и тестируемостта.
Пример на C#:
public interface ILogger
{
void Log(string message);
}
public class ConsoleLogger : ILogger
{
public void Log(string message)
{
Console.WriteLine(message);
}
}
Тук ILogger задава метода Log, а класът ConsoleLogger реализира този метод.