If a class extends an abstract class, it has to implement all the abstract methods or itself will be marked as abstract.
If you want to create objects of a class, the class needs to be completed.
If the child class cannot provide implementation of all the abstract methods, it should mark itself with the keyword abstract.
abstract class MyAbstractClass { public abstract void InCompleteMethod1(); public abstract void InCompleteMethod2(); } abstract class ChildClass : MyAbstractClass { public override void InCompleteMethod1() { Console.WriteLine("Making complete of InCompleteMethod1()"); } }