воскресенье, 25 апреля 2021 г.

Template Method

abstract class SoundSystem {
  void makeSound() {
    print(getSound());
  }

  String getSound();
}

class DVDPlayer extends SoundSystem {
  @override
  String getSound() {
    return 'Play DVD disk';
  }
}

class Radio extends SoundSystem {
  @override
  String getSound() {
    return 'Play radio station';
  }
}

void main() {
  final systems = <SoundSystem>[
    DVDPlayer(),
    Radio(),
  ];

  for (var system in systems) {
    system.makeSound();
  }
}

Комментариев нет:

Отправить комментарий