我最近遇到了一个问题,我似乎需要一个“静态抽象”方法。我知道为什么这是不可能的,但我该如何解决这个限制?
例如,我有一个具有描述字符串的抽象类。由于此字符串对于所有实例都是通用的,因此将其标记为静态,但我想要求从此类派生的所有类都提供自己的 Description 属性,因此我将其标记为抽象:
abstract class AbstractBase
{
...
public static abstract string Description{get;}
...
}
它当然不会编译。我想过使用接口,但接口可能不包含静态方法签名。
我应该让它简单地成为非静态的,并且总是得到一个实例来获取该类的特定信息吗?
有任何想法吗?