Skip to content

DANGER

Страница находится в процессе написания

Late

Отложенная инициализация - подразумевает, что переменная получит своё значение позже. Отложенную инициализаю ещё можно назвать ленивой, т.к. она позволяет нам записать значение в момент обращения к переменной.

dart
late String str; // сказали, что запишем позже

*какой-то код*

str = 'name'; // записали значение

print(str); // используем

Важно помнить, что стоит использовать переменную только после инициализации, иначе можно получить исключение. Именно поэтому такая инициализация в основном используется для ленивой инициализации.

dart
late String username = 'John';

print(username); // Переменная username будет инициализирована именно здесь, а после выведена в консоль. А не в момент создания.

DANGER

Последний пример - частый гость собеседований мидл и выше.