我遵循的是一本使用工厂方法实现单例类的书.

我知道这样做的主要目的是只有一个类实例;但是关键字"Factory"在Ffltter中到底有什么作用呢?

这是我指的这段代码:

static final DbHelper _dbHelper = DbHelper._internal();

DbHelper._internal();

factory DbHelper() => _dbHelper;

我假设_dbHelper是使用_internal named constructor创建的单个实例,并且工厂方法返回该单个实例,对吗?我是不是遗漏了什么?

推荐答案

你说得对!

您可以在此处阅读有关工厂构造函数的更多信息: https://dart.dev/guides/language/language-tour#factory-constructors

Flutter相关问答推荐

如何更改默认应用程序启动器/启动屏幕

Flutter 中的多页表现

点击表情符号按钮后,Flutter 文本域文本编辑控制器将文本恢复为原始值

将Riverpods NotifierProvider与State类一起使用

应为Map String,dynamic类型的值,但得到的值为type()= Map String,dynamic'

Flutter如何在容器外创建环形进度条

无法在 ListView (Flutter) 中限制 Card 的最大宽度

Flutter url_launcher 插件抛出java.lang.IllegalArgumentException:接收器未注册:io.flutter.plugins.urllauncher.WebViewActivity

如何使用 riverpod_annotation 创建非自动处置提供程序?

Flutter - 根据从第一个 DropdownButtonForm 中 Select 的内容在第二个 DropdownButton 上显示选项

如何根据应用程序主题(深色和浅色)更改谷歌 map 的主题?

Riverpod 在使用冻结副本更新状态时触发重建,即使没有任何更改

String类型不是Widget类型的子类型?在dart 中

Flutter RawMaterialButton 常量相对大小

如何在 flutter 中制作这种类型的扩展瓦片

从物理设备 Flutter 中移除 USB 后启动画面不可见?

在 Flutter 中将提取的 Listview.builder 与两个列表一起使用

我几乎每次都将 Stateless Widget 与 BLoC 一起使用.我错了吗?

我们什么时候在flutter中初始化一个provider?

如何从我的Flutter 项目中删除错误?