Sobes.tech
Junior — Middle

Vysvětlete koncept a použití `late init` v jazyce Dart.

sobes.tech AI

Odpověď od AI

V jazyce Dart se klíčové slovo late používá pro odloženou inicializaci proměnných. To znamená, že proměnná je deklarována bez počáteční hodnoty, ale je zaručeno, že bude inicializována před prvním použitím.

To je užitečné, když závisí inicializace proměnné na datech, která jsou dostupná až později, nebo když je inicializace nákladná a je vhodné ji odložit.

Příklad:

class Example {
  late String description;

  void setup() {
    description = "Později inicializováno";
  }

  void printDescription() {
    print(description); // Pokud description není inicializováno, dojde k chybě
  }
}

Pokud se pokusíte použít description před jejím inicializováním, dojde k výjimce. Tímto způsobem late pomáhá zabránit použití nullable typů a zároveň zachovává flexibilitu inicializace.