Search
[Flutter/dart]LateInitializationError with late final variable
- M.R

- Dec 30, 2022
- 1 min read
Phenomenon
There is a class like below.
class SomeClass{
late final String? hoge;
SomeClass({this.hoge}){
hoge??= ""; //1
}
}If hoge is null (i.e. no value is set for the argument), I will get a lateInitialization error at point 1.
I thought it's okay to assign a value here, because it is "late"...
Cause
Since it is "initialized" at "this.hoge", subsequent value assignments will be lateInitialization, even if the value is null.
I thought that it was not initialized yet because it was not assigned if it was null.
Solution
class SomeClass{
late final String? hoge;
SomeClass({String? hoge}){
this.hoge = hoge?? "";
}
}





Comments