Different Types of Inheritance
Inheritance is the process of creating a new Class, called the Derived Class, from the existing class, called the Base Class. The Inheritance has many advantages, the most important of them being the reusability of code. Rather than developing new Objects from scratch, new code can be based on the work of other developers, adding only the new features that are needed. The reuse of existing classes saves time and effort.
However, inheritance may be implemented in different combinations in Object-Oriented Programming languages as illustrated in figure and they include:
- Single Inheritance
- Multi Level Inheritance
- Hierarchical Inheritance
- Hybrid Inheritance
- Multipath inheritance
- Multiple Inheritance
When a Derived Class to inherit properties and behavior from a single Base Class, it is called as single inheritance.
Multi Level Inheritance
A derived class is created from another derived class is called Multi Level Inheritance
More than one derived class are created from a single base class, is called Hierarchical Inheritance
Any combination of above three inheritance (single, hierarchical and multi level) is called as hybrid inheritance.
Multiple inheritance is a method of inheritance in which one derived class can inherit properties of base class in different paths. This inheritance is not supported in .NET Languages such as C#.
Multiple inheritances allows programmers to create classes that combine aspects of multiple classes and their corresponding hierarchies. In .Net Framework, the classes are only allowed to inherit from a single parent class, which is called single inheritance. More about.... Why in .NET multiple inheritance is not allowed
- What is a Class?
- What is an Object?
- Constructors and Destructors
- What Is Inheritance ?
- What are Access Modifiers ?
- Why Classes cannot be declared as Protected?
- Can we declare private class in namespace
- Difference between Classes and Structures
- Can we use pointers in C# ?
- Why abstract class can't create instance
- Can you prevent your class from being inherited
- Difference between method Overloading and Overriding
- Difference between Early Binding and Late binding
- What is nested class
- What is partial class ?
- What is Virtual Method
- Difference between class and object
- What is Data Encapsulation?
- Object Based Language and OOPs