Встречается на собеседованиях • сегодня
В чем разница между интерфейсом и классом в C#
Интерфейс определяет контракт (набор методов/свойств), который должен быть реализован, но не содержит их реализации. Класс же может содержать реализацию методов и полей, а также может реализовывать несколько интерфейсов.
Ключевые отличия:
- Интерфейс не может содержать реализацию (до C# 8.0), класс - может
- Класс может наследовать только один класс, но несколько интерфейсов
- Интерфейсы не могут содержать поля (только свойства)
- Интерфейсы не могут иметь конструкторы
Пример:
csharp
interface IAnimal {
void MakeSound(); // только сигнатура
}
class Dog : IAnimal {
public void MakeSound() { // реализация
Console.WriteLine("Woof!");
}
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы