Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про TypeScript: class, ооп

Чем отличается абстрактный класс от интерфейса?

Вопрос проверяет понимание ключевых различий между абстрактными классами и интерфейсами в ООП.

Короткий ответ

  • Абстрактный класс — это класс, который нельзя создать напрямую, только унаследовать. Он может содержать реализацию методов.

  • Интерфейс — это контракт, который описывает, какие методы должны быть у класса. Он не содержит реализации.

Длинный ответ

Абстрактный класс

  • Может содержать реализованные методы и поля.

  • Использует ключевое слово abstract (в TypeScript/Java).

  • Подходит для общего поведения, которое будет у нескольких классов.

Пример (TypeScript):

abstract class Animal {
	abstract makeSound(): void; // Должен быть реализован
	move() { console.log("Moving..."); } // Уже реализован
}
class Dog extends Animal {
	makeSound() { console.log("Woof!"); }
}

Интерфейс

  • Описывает только сигнатуры методов (без реализации).

  • Класс может реализовывать много интерфейсов.

  • Используется для строгого контракта.

Пример (TypeScript):

interface Flyable {
	fly(): void;
}
class Bird implements Flyable {
	fly() { console.log("Flying!"); }
}

Абстрактные классы подходят для шаблонного поведения, интерфейсы — для определения обязательных методов.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    3

  • Сложность:

    8

Навыки

  • TypeScript

    TypeScript

Ключевые слова

#class

#ооп

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию