强制子对象实现静态方法

时间:2011-10-18 21:40:56

标签: c# .net

我想允许所有的子对象实现静态方法。例如:

public abstract class A {}
public class B : A {}
public class C : A {}

我希望B和C具有DoSomething()静态方法,其中A中将存在DoSomething()的默认实现。

这样做的实践是什么?

1 个答案:

答案 0 :(得分:6)

你不能这样做。无论如何,你无法以多态方式调用静态方法。基本上,静态成员和多态不能一起工作。要么放弃多态,要么创建一个并行类型层次结构,其中实例方法。