在dart中可以有一个私有构造函数吗?
我可以在TypeScript中执行以下操作在dart中可以有一个私有构造函数吗?,dart,Dart,我可以在TypeScript中执行以下操作 class Foo { private constructor () {} } 因此,这个构造函数只能从类本身内部访问 如何在Dart中实现相同的功能?只需创建一个以开头的命名构造函数即可 class Foo { Foo._() {} } 然后构造函数Foo.\uz()将只能从其类(和库)中访问。没有任何代码的方法必须是这样的 class Foo { Foo._(); } 如何为此编写单元测试?您将无法为此私有构造函数编写单元测试。记
class Foo {
private constructor () {}
}
因此,这个构造函数只能从类本身内部访问
如何在Dart中实现相同的功能?只需创建一个以开头的命名构造函数即可
class Foo {
Foo._() {}
}
然后构造函数Foo.\uz()
将只能从其类(和库)中访问。没有任何代码的方法必须是这样的
class Foo {
Foo._();
}
如何为此编写单元测试?您将无法为此私有构造函数编写单元测试。记住,测试接口而不是实现。由于私有构造函数将无法从库外部访问,因此在单元测试中测试私有方法将测试实现而不是接口。如果这是私有的,那么我怎么能做Foo.()呢
在类之外而不出错?@Chrillewoodz如果您尝试从声明类的同一文件初始化该类,则可以。