Карточка Junior Dart: классы и миксины обновлено
Миксин в Dart
Вопрос
Что такое миксин и чем он отличается от наследования?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Миксин (mixin M) это набор членов, которые подмешиваются в класс через with. Класс может взять несколько миксинов, но наследоваться только от одного класса.
Ответ
Миксин (mixin M) это набор членов, которые подмешиваются в класс через with. Класс может взять несколько миксинов, но наследоваться только от одного класса. Порядок применения задаёт линеаризацию: правый миксин переопределяет левый. Экземпляр миксина создать нельзя (кроме mixin class).
Разбор
Во Flutter: SingleTickerProviderStateMixin, WidgetsBindingObserver, AutomaticKeepAliveClientMixin.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «Dart: классы и миксины»
- Dart 3: модификатор interface
- Dart: переопределение == без hashCode
- Dart: расширения разрешаются статически
- Dart: зачем нужен factory-конструктор
- Dart: const и именованный конструктор
- Виды конструкторов в Dart
- Dart: какой метод победит при нескольких миксинах
- Dart: ключевое слово on у миксина