我正在使用嵌入式设备的状态模式进行编码。我有一个称为State的基类/抽象类,然后每个离散(具体)状态类都实现了抽象State类。
在状态类中,我有几种抽象方法。如果我不在离散(具体)类中实现抽象方法,Visual Studio将给出如下错误:
...错误1'myConcreteState'未实现继承的抽象成员'myAbstractState'
现在:我正在尝试为每个名为StateName的州创建String属性。每当创建新的具体类时,都需要定义StateName。如果不使用VS,我希望VS抛出错误。有没有简单的方法可以做到这一点?
我已经在抽象/基类中尝试过此操作:
public abstract string StateName { get; set; }
但是我不需要在每个州中实现Get和Set方法。
修订的问题:在理想情况下,将要求每个状态类都具有StateName定义并从抽象基类继承。
StateName = "MyState1"; //or whatever the state's name is
如果缺少该语句,则Visual Studio将生成如上所述的错误。这可能吗?如果可以,怎么办?