Introduction to C# Base
The keyword used to access the base class constructors, fields, and methods of the base class inside the derived class is called base keyword in C#. This base keyword can be used inside an instance method, instance property accessor or constructor only and this base keyword cannot be used inside the methods that are declared as static and this base keyword is useful if there are same fields present in both the base class and the derived class, if the field present in the base class is not derived by the derived class then there is no use of the base keyword.
Syntax
The syntax of C# Base keyword is as follows:
base.constructor_name/field_name/method_name;
where,
constructor_name is the name of the constructor in the base class,
field_name is the name of the field in the base class and
method_name is the name of the method in the base class.
How does C# Base keyword work?
Whenever there is a need to make use of the constructors or fields or methods of the base class in the derived class, we make use of the keyword base in the derived class.
The base keyword can be used inside the instance method, instance property accessor, or constructors only and this base keyword cannot be used inside the methods that are declared as static. Base keyword is useful if there are same fields present in both the base class and the derived class, if the field present in the base class is not derived by the derived class then there is no use of the base keyword.
The necessity to duplicate the code can be eliminated by making use of the base keyword. By making use of a base keyword, the confusion as to which member must be referenced from the base class is eliminated in the derived class.
Examples to Implement C# Base
Below are the examples mentioned :
Example #1
C# program to demonstrate the use of a base keyword to reference the variable of the base class in the derived class:
4.6 (8,882 ratings)
View Course
Code:
using System;
//a class called check is defined which is the base class
public class check
{
//a string variable is defined to store the string
public string string1 = "Welcome to";
}
//another class called check1 is defined which is derived from the base class called check
public class check1: check
{
//another string variable is defined to store the another string
string string2 = "C#";
//a method is defined inside the derived class which displays the string from the base class and the derived class as well
public void displaymsg()
{
Console.WriteLine(base.string1);
Console.WriteLine(string2);
}
}
//another class called check2 is defined within which the main method is called the instance of the derived class is created and the method of the derived class is called which in turn accesses the variable of the base class
public class check2
{
public static void Main()
{
check1 ob = new check1();
ob.displaymsg();
}
}
Output:
Explanation: In the above program, a class called check is defined which is the base class. Then a string variable is defined to store the string. Then another class called check1 is defined which is derived from the base class called to check. Then another string variable is defined to store another string. Then a method is defined inside the derived class which displays the string from the base class and the derived class as well. Then another class called check2 is defined within which the main method is called the instance of the derived class is created and the method of the derived class is called which in turn accesses the variable of the base class. The output is as shown in the snapshot above.
Example #2
C# program to demonstrate the use of a base keyword to reference the variable of the base class in the derived class:
Code:
using System;
//a class called check is defined which is the base class
public class check
{
//a string variable is defined to store the string
public string string1 = "Learning is";
}
//another class called check1 is defined which is derived from the base class called check
public class check1: check
{
//another string variable is defined to store the another string
string string2 = "Fun";
//a method is defined inside the derived class which displays the string from the base class and the derived class as well
public void displaymsg()
{
Console.WriteLine(base.string1);
Console.WriteLine(string2);
}
}
//another class called check2 is defined within which the main method is called the instance of the derived class is created and the method of the derived class is called which in turn accesses the variable of the base class
public class check2
{
public static void Main()
{
check1 ob = new check1();
ob.displaymsg();
}
}
Output:
Explanation: In the above program, a class called check is defined which is the base class. Then a string variable is defined to store the string. Then another class called check1 is defined which is derived from the base class called to check. Then another string variable is defined to store another string. Then a method is defined inside the derived class which displays the string from the base class and the derived class as well. Then another class called check2 is defined within which the main method is called the instance of the derived class is created and the method of the derived class is called which in turn accesses the variable of the base class. The output is as shown in the snapshot above.
Advantages of C# Base
There are several advantages of using the base keyword, they are:
1. The necessity to duplicate the code can be eliminated by making use of the base keyword.
2. By making use of a base keyword, the confusion as to which member must be referenced from the base class is eliminated in the derived class.
Conclusion
In this tutorial, we understand the concept of the base keyword in C# through definition, syntax, and working of base keyword through programming examples and their outputs and the advantages of using base keyword in our program.
Recommended Articles
This is a guide to C# Base. Here we discuss an introduction to C# Base, syntax, how does it work along with programming examples. You can also go through our other related articles to learn more –