Встречается на собеседованиях • сегодня

Что такое множественное наследование в TypeScript

TypeScript не поддерживает множественное наследование напрямую, как некоторые другие языки (например, C++). Однако есть несколько способов добиться похожего поведения:

  1. Миксины - паттерн, позволяющий комбинировать функциональность из нескольких классов:
typescript
class Disposable {
  dispose() { console.log('Disposed'); }
}

class Activatable {
activate() { console.log('Activated'); }
}

class SmartObject implements Disposable, Activatable {
dispose: () => void;
activate: () => void;
}

applyMixins(SmartObject, [Disposable, Activatable]);

text

2. **Композиция** (предпочтительный способ) - использование других классов через включение:
```typescript
class Engine {
  start() { /* ... */ }
}

class Wheels {
  rotate() { /* ... */ }
}

class Car {
  private engine = new Engine();
  private wheels = new Wheels();
  
  drive() {
    this.engine.start();
    this.wheels.rotate();
  }
}

Лучше использовать композицию, так как она более гибкая и проще в поддержке, чем классическое множественное наследование.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы