我正在创建一个工厂,它使用委托在每个注册类型上调用静态方法,以创建该类型的实例。
在工厂中,我有委托定义:
public delegate GridColumnBase ColumnFactoryMethod();
我希望每个继承自GridColumnBase
的类型都实现一个静态CreateInstance()
方法。我不能成为CreateInstance
的static abstract
成员GridColumnBase
,那么如何强制每个类都实现此方法?
编辑:再想一想,我得出的结论CreateInstance()
不是继承类的特征GridColumnBase
,而是希望包含在工厂中的类的特征。也许我不需要在基类级别强制执行此操作。也许我需要把它留给实现类来决定它希望如何参与工厂流程,即将它希望委托的任何功能传递给工厂。除了我之外,这对任何人都有意义吗?:)