【发布时间】:2013-09-18 18:05:07
【问题描述】:
想象以下两个类:
class A
{
public A()
{
}
}
class B : A
{
public B()
{
}
}
我是否可以以强制 B 类具有无参数构造函数的方式定义 A 或接口?或者,更概括地说,一个构造函数(或静态方法)能够创建具有给定签名的 B 类型实例?
我确实不想将B类限制为只能使用该签名构造,但我想确保B类可以使用该签名构造(是它是无参数的,或指定某些参数)。
需要说明的是:我不是在寻找需要我在运行时使用反射或任何其他方法来解决这个问题的解决方案(我对此没有问题,但它会使代码的可读性降低,在这种情况下通常看起来是个坏主意)。
有没有办法做到这一点?
我写了一篇博文,更深入地介绍了我正在努力实现的目标here
【问题讨论】:
标签: c# serialization interface constraints factory