Class with parametrized constructor always
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Interface defining a constructor signature?
我可以在接口中声明方法和属性,并强制实现它的类来实现这些方法和属性。类似地,是否可以强制一个规则,使实现某个接口的所有类始终具有参数化构造函数?
我不确定这是否可行。只是一个想法。
谢谢
Similarly is it possible to impose a rule such that all my classes which implement a certain interface should always have a parametrized constructor?
不,不是通过接口声明。
您可以创建一个抽象类,它可以有一个参数化的构造函数——所有实现类型都将继承该构造函数,并且可以使用
不,但是如果您的目标是规范化接口实例的构造方式,请为第一个实例定义另一个作为工厂的接口。在工厂界面中,可以强制应用所需的构造参数。
1 2 3 4 5 6 7 8 9 | interface IFoo { ... } interface IFooFactory { IFoo CreateFoo(string param1, string param2) } |
类具有构造函数,而接口不能。因此,不能强制实现某些接口的类具有参数化的构造函数
但是您可以有一个具有多个构造函数的类,它的子类可以有一个选择,他们想使用哪个构造函数