What is inheritance?

Inheritance is the property of oops in which we can access and extend all the public and protected member of class using other class without writing the whole code. The class which is inherited is known as parent or base class. Class which does the inheritance is known as child or derived class. We can achieve the inheritance using colon (:) in c#. in c sharp we can inherit only one class into another class.

Can we override a method into derived class without declaring a method as virtual?

No. If you want to override a method into derived class then that method must be declared as either virtual or abstract.

Is this necessary that if I have declared method as virtual in my base class and I have to override it into my derived class.

No. it is not necessary for me to override a virtual method.

What is difference between overriding and hide?

In overriding we are simply extending the base class method which is declared as virtual. But in hiding we are simply suppressing or hiding the calling of base class method in derived class.

For Detail Click Here

What is access modifier and explains each with example

To know the answer of this question in Detail Click Here

what is Internal

Internal is basically an access modifier which is only accessed in same assembly.

For Detail Click Here

What is abstract class

Abstract class is an incomplete class in which we can add both abstract and non-abstract method. Abstract method is the method which is only declared not defined. We can create the object of abstract class. To access the abstract first we have inherit that class and then we have to override all abstract method to define them. Then we have to create the object of derived class.

Is this necessary that every abstract class must have abstract method.

No. it is not necessary for an abstract class to have abstract method but if you have declared abstract method in class then that class must be abstract.

Is this necessary to define all abstract method in derived class.

Yes. It is must for me to define all method which is abstract in abstract class. if you are not able to define all method then you can again declare derived class as an abstract class.

Can we inherit abstract class into another abstract class?

Yes we can.