РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
95 of 723 menu

Mixin class

mixin class - это класс, который можно одновременно использовать и как обычный класс (создавать его экземпляры, наследоваться от него), и как примесь (подмешивать его функциональность другим классам через with). Такой класс не может иметь конструктор с параметрами и не может наследоваться от другого класса, кроме Object. Объявляется он с помощью ключевых слов mixin class перед именем класса.

Синтаксис

mixin class Name { // body }

Пример

Давайте объявим mixin class и используем его как примесь для другого класса:

mixin class Greet { void hello() { print('abcde'); } } class User with Greet { } void main() { User user = User(); user.hello(); }

Результат выполнения кода:

"abcde"

Пример

Давайте создадим экземпляр самого mixin class, так как он является полноценным классом:

mixin class Greet { void hello() { print('12345'); } } void main() { Greet greet = Greet(); greet.hello(); }

Результат выполнения кода:

"12345"

Пример

Давайте подмешаем сразу несколько mixin class в один класс:

mixin class A { void showA() { print('a'); } } mixin class B { void showB() { print('b'); } } class C with A, B { } void main() { C c = C(); c.showA(); c.showB(); }

Результат выполнения кода:

"a" "b"

Смотрите также

  • ключевое слово mixin,
    которое объявляет чистую примесь
  • ключевое слово with,
    которое подмешивает примесь к классу
  • ключевое слово extends,
    которое наследует класс от другого класса
  • ключевое слово class,
    которое объявляет обычный класс
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить