Abstract  Class In C#

The word abstract means a concept or an idea not associated with any specific instance. In programming we apply the same meaning of abstraction by making classes not associated with any specific instance.


The abstraction is done when we need to only inherit from a certain class, but not need to instantiate objects of that class.

Classes can be declared as abstract by putting the keyword abstract before the class definition. 

For example:

public abstract class Program
{
}

   1.  An Abstract class is an incomplete class.

    2.  An Abstract class is a special class we can't instantiate.

    3. We can use an Abstract class as a Base Class.

    4.  An Abstract method must be implemented in the non-Abstract class using the override keyword.

    5. After overriding the abstract method is in the non-Abstract class.

    6.  We can derive this class in another class and again we can override the same abstract method with it.

    7. An abstract class can inherit from a class and one or more interfaces.

    8. An abstract class can implement code with non-Abstract methods.

    9. An Abstract class can have modifiers for methods, properties etc.

    10. An Abstract class can have constants and fields.

    11. An abstract class can implement a property.

    12. An abstract class can have constructors or destructors.

    13. An abstract class cannot be inherited from by structures.