C#: INHERITANCES

  1. It is mechanism of creating new class by already existing class.
  2. Inheritace is used to establish the relationship between two (or) more classes.
  3. It is mechanism of obtaining the Variables and Methods from one class to another class.
  4. The class which is giving Variable & Methods is called as "Base Class (or) Super Class (or) Parent Class".
  5. The class which is taking variable and methods is called as "Derived Class (or) Sub Class (or) Child Class".
  6. The Operator : is inheritance operator
  7. Inheritance is always is possible between "Base Class" to "Derived Class"
  8. The Advantages of Inheritance is
    • Reusability
    • Re-Implementaion
    • Extensability

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication28
{
 //Base class
 class Country
  {
    public void ShowCountry()
     {
       Console.WriteLine("This is India..");
     }
  }

 //Derived class
 class State : Country
  {
    public void ShowState()
    {
      Console.WriteLine("This is Andhra Pradesh..");
    }
  }

 class Program
  {
   static void Main(string[] args)
    {
     //create instance for Derived class
     State st = new State();

     //access the Method from Base and Derived Class
     st.ShowCountry();
     st.ShowState();
     Console.Read();
    }
  }
}

Types of Inheritance :

  • Single Inheritance
  • Multi-Level Inheritance
  • Hierarchical Inheritance
  • Hybrid Inheritance
  • Multiple Inheritance

Single Inheritance :

It is a process of creating a "Derived Class" by using "Base Class"

below program is also called as Inheritance and Single Inheritance.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication28
{
 //Base class
 class Country
  {
    public void ShowCountry()
     {
       Console.WriteLine("This is India..");
     }
  }

 //Derived class
 class State : Country
  {
    public void ShowState()
    {
      Console.WriteLine("This is Andhra Pradesh..");
    }
  }

 class Program
  {
   static void Main(string[] args)
    {
     //create instance for Derived class
     State st = new State();

     //access the Method from Base and Derived Class
     st.ShowCountry();
     st.ShowState();
     Console.Read();
    }
  }
}

Multi-Level Inheritance :

It is a process of creating a "Derived Class" by using another "Base Class"

example of multi - level inheritance


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
 //Base class
 class Country
  {
    public void ShowCountry()
     {
       Console.WriteLine("This is India..");
     }
  }

 //Derived class
 class State : Country
  {
    public void ShowState()
    {
      Console.WriteLine("This is Andhra Pradesh..");
    }
  }

 //Derived class
 class City : State
  {
    public void ShowCity()
    {
      Console.WriteLine("This is Vijayawada..");
    }
  }

 class Program
  {
   static void Main(string[] args)
    {
     //create instance for Derived class
     City ct = new City();

     //access the Method from Base and Derived Class
     ct.ShowCountry();
     ct.ShowState();
     ct.ShowCity();
     Console.Read();
    }
  }
}

Hierarchical Inheritance :

It is a process of creating multiple "Derived Class" by using single "Base Class"

example of Hierarchical inheritance


using System;
namespace ConsoleApplication1
{
 class Person
  {
   int id; 
   string firstname;
   string lastname;

   //Constructor
   public Person(int id1, string fname, string lname)
    {
      this.id=id1;
      this.firstname=fname;
      this.lastname=lname;
    } 
   public void DisplayData()
    {
      Console.WriteLine("Id is : "+id);
      Console.WriteLine("Name is : "+firstname+lastname);
    }
  }

//Derived Class
 class Student : Person
  {
   char grade;

   //Constructor
   public Student(int id1, string fname, string lname, char grade1):base(id1, fname, lname)
   {
     this.grade=grade1;
   }

   public void DisplayStudentData()
    {
      DisplayData();
      Console.WriteLine("Grade is : "+grade);
    }
  }

//Derived Class
 class Employee : Person
  {
    string designation;
    public Employee(int id1, string fname, string lname, string desig):base(id1, fname, lname)
     {
       this.designation=desig;
     }
    public void DisplayEmployeeData()
     {
      DisplayData();
      Console.WriteLine("Designation is : "+desig);
     }
  }

//Main Class
 class Program
  {
    static void Main()
     {
      Student s1=new Student(101, "praveen", "reddy", 'A');
              s1.DisplayStudentData();
      Employee e1=new Employee(102, "praveen", "reddy", 'Software Engg.');
               e1.DisplayEmployeeData();
     }
  }
}

Hybrid Inheritance :

It is the combination of two (or) more Inheritance

hybrid inheritance

Multiple Inheritance :

multiple inheritance
  • It is the process of creating a Derived Class from more than one Base Class.
  • c#.net (or) java doesn't support multiple inheritance directly through classes.
  • in c#.net we can achieve multiple inheritance by using Interface.

Post a Comment

1 Comments

  1. Inheritance : Interview Question and Answer
    http://allittechnologies.blogspot.in/2016/01/inheritace-interview-question-and-answer-dotnet-programmer.html

    ReplyDelete