Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtOpExEM 91 of 113 menu
◀ ▶

Метод расширения в Dart

Метод расширения записывают внутри блока extension так же, как метод в классе. Объект целевого типа после объявления может вызвать эту команду через точку, не меняя исходное объявление класса.

Класс Post хранит заголовок, а вывод вынесем в расширение PostText:

class Post { Post(this.title); String title; } extension PostText on Post { void shout() { print(title); } }

Создадим объект и вызовем метод:

var post = Post("note"); post.shout();

Метод shout живет в расширении, но вызывается у переменной post как собственная команда типа Post. Поле title остается в классе, расширение только использует его внутри тела метода.

Сделайте класс Employee с полем name и конструктором, принимающим имя.

Объявите расширение с методом, который выводит значение name через print.

Создайте объект Employee и вызовите метод расширения.

Дан следующий код:

class Employee { Employee(this.name); String name; }

Добавьте расширение с методом show, который выводит строку "hello", и вызовите его у нового объекта.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить