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

Введение в расширения в Dart

Расширение - отдельный блок кода, который дополняет уже объявленный тип новыми методами и геттерами. Сам класс при этом не переписывают и от него не наследуются: поведение «навешивают» снаружи, когда менять исходный файл нельзя или неудобно.

Такой прием удобен для типов из библиотек и для своих классов, когда логика вывода или форматирования живет отдельно от хранимых полей. Расширение видит публичные члены типа и может обращаться к ним внутри добавленных команд.

В Dart расширение объявляют словом extension, затем имя блока и слово on с целевым типом. Методы расширения вызывают у объекта этого типа обычной точкой, как если бы они были записаны внутри класса.

Расширение не создает подкласс и не меняет память объекта: оно только добавляет способ вызвать новую команду у уже существующего экземпляра, не переписывая класс и не объявляя наследника с новым именем типа.

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