public interface ITest { int ChildCount { get; set; } } public class Test { } public class OrderPool : ITest, Test { public int ChildCount { ge
Simply because the language is designed like that. The reason is probably that a class can have only one base class, but implement any number of interfaces.