开发者

C# possible to have a constructor in an abstract class?

I have 1 abstract class that is calling a static method which up until now didn't require any parameters. This has recently changed. In reality the static method exists in another class and sets the value of BaseMessageDirectory, but in this example below I have simplified things...

So now I want to create my derived classes in such a way that they can in开发者_如何学JAVAitialize some required properties in the parent class during the inheritance, is this possible?

For example....

 public abstract class ParentClass
    {
          protected string BaseMessageDirectory;

          protected ParentClass(EnumOperationType operationType)
             {
                if(operationtype == 1)
                  {
                     BaseMessageDirectory = "one";
                  }
                else
                  {
                     BaseMessageDirectory = "two";
                  }
             }
    }


Yes, you can define a constructor, and all child classes will have to call it:

public class Child : ParentClass
{
    public Child() : base(EnumOperationType.One) { ... }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜