C# Polymorphism2 min read

Polymorphism means having many forms. The word “poly” means many and “morphs” means form. Polymorphism is one of the core principles of object-oriented programming which means it is the way of performing some task in many ways.

With polymorphism, a class can have multiple implementations with the same name.

There are two types of polymorphism in C#:

  1. Compile-time Polymorphism or Static (or early) Polymorphism.
  2. Runtime Polymorphism or Dynamic (or late) Polymorphism.

C# Compile Time Polymorphism

In this type of program, the flow of control is decided at compile time itself. It is achieved by function overloading and operator overloading. It is also known as static or early binding.

Let us go through function overloading and we will cover operator overloading in the next tutorial.

Function Overloading

A function is said to be overloaded if two or more functions having the same name but different parameters. The difference could be in a number of parameters or types of parameters so that compiler can tell the difference.

Also, while calling this function make sure to give the proper parameters according to the required called function. Learn more on method overloading in C#.

Example of C# program for function overloading.

Output:

Name: John Mac Roll: 18
Value of counter: 100


C# Run Time Polymorphism

In run time polymorphism, the program is called at the time of execution that is at rum time. It is also known as the late binding or dynamic binding.

This type of polymorphism is achieved by Method Overriding.

Method Overriding

Method overriding is done through inheritance, it allows us to define a function at a derived class that is already present in a base class. And that base is said to be overridden. There is a use of the virtual keyword and override keyword as shown in the program below.

And the decision made to call the required function is done at the run time. Hence, the Runtime polymorphism.

Example: C# program for method overriding.

Output:

Dog Sleeps
Animals Sleeps


MORE

Keith Number Program in C

In this tutorial, we will write a Keith number in C. It is one of the most asked questions in an interview. Before that, you …
Read More

Keith Number Program in C++

In this tutorial, we will write a Keith number in C++. It is one of the most asked questions in an interview. Before that, you …
Read More

Singly linked list Program C++

In this tutorial, we will write a C++ program to implement singly linked list. In this program, we will create a separate function for each …
Read More

Fascinating Number Program in C

In this tutorial, we will write a C program to check whether the given number is a Fascinating number or not. You may go through …
Read More

Peterson Number in C

In this tutorial, we will learn about the Peterson number and check if the number is Peterson or not in C. What is Peterson Number? …
Read More

Peterson Number in C++

In this tutorial, we will learn about the Peterson number and write a C++ program to check if the given number is a Peterson number …
Read More