Встречается на собеседованиях • сегодня
Какие знаешь принципы ООП
Основные принципы ООП в C#:
- Инкапсуляция - скрытие деталей реализации. Используем
privateполя и предоставляем доступ через свойства/методы.
csharp
class Person {
private string _name;
public string Name {
get => _name;
set => _name = value ?? throw new ArgumentNullException();
}
}- Наследование - создание новых классов на основе существующих. В C# поддерживается только одиночное наследование.
csharp
class Animal {}
class Dog : Animal {}- Полиморфизм - возможность объектов вести себя по-разному в зависимости от типа. Реализуется через виртуальные методы и переопределение.
csharp
class Shape {
public virtual void Draw() => Console.WriteLine("Drawing shape");
}
class Circle : Shape {
public override void Draw() => Console.WriteLine("Drawing circle");
}- Абстракция - выделение главных характеристик объекта. Используем абстрактные классы и интерфейсы.
csharp
interface ILogger {
void Log(string message);
}Дополнительно в C# важны принципы SOLID, но это уже более продвинутая тема.
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы
