当new还不是可选的时候,工厂构造函数是方便的,因为然后它的new MyClass()工作在类中,构造函数每次都返回一个新实例,或者类返回一个缓存的实例。您还可以将static final DbHelper _db = new DbHelper._constr();,并删除我在回答中建议的单例getter。这取决于您的用例。如果需要额外的配置值来创建实例,则可能无法使用字段初始化程序。但是,在您的示例中,这就足够
如何在di.dart中创建单例实例?GameRepository)..bind(GameRepository, toValue: new GameRepository())
这似乎有效,但是很容易,因为GameRepository没有参数,但是不应该有一种方法告诉di框架将它绑定为一个单例,而不需要我实例化它(并维护它的构造函数调用?)编辑:@Günter,我确实想要一个Singleton,但是在我的例子中,我想从我的re