init call lazy only once before call load or save by default do nothing
@override Future<void> init() async { box = await Hive.openBox<T>(boxName); }