HTML tutorial
CSS3 tutorial
Bootstrap tutorial
JavaScript tutorial
JQuery tutorial
AngularJS tutorial
React tutorial
NodeJS tutorial
PHP tutorial
Python tutorial
Python3 tutorial
Django tutorial
Linux tutorial
Docker tutorial
Ruby tutorial
Java tutorial
C tutorial
C ++ tutorial
Perl tutorial
JSP tutorial
Lua tutorial
Scala tutorial
Go tutorial
ASP.NET tutorial
C # tutorial
In C#, it is possible to inherit fields and methods from one class to another. We group the "inheritance concept" into two categories
In C#, it is possible to inherit fields and methods from one class to another. We group the "inheritance concept" into two categories:
To inherit from a class, use the :
symbol.
In the example below, the Car
class
(child) inherits the fields and methods from the Vehicle
class
(parent):
class Vehicle // base class (parent)
{
public string brand = "Ford"; // Vehicle field
public void honk() // Vehicle method
{
Console.WriteLine("Tuut, tuut!");
}
}
class Car : Vehicle // derived class (child)
{
public string modelName = "Mustang"; // Car field
}
class Program
{
static void Main(string[] args)
{
// Create a myCar object
Car myCar = new Car();
// Call the honk() method (From the Vehicle class) on the myCar object
myCar.honk();
// Display the value of the brand field (from the Vehicle class) and the value of the modelName from the Car class
Console.WriteLine(myCar.brand + " " + myCar.modelName);
}
}
- It is useful for code reusability: reuse fields and methods of an existing class when you create a new class.
Tip: Also take a look at the next chapter, Polymorphism, which uses inherited methods to perform different tasks.
If you don't want other classes to inherit from a class, use the sealed
keyword:
If you try to access a sealed
class, C# will generate an error:
sealed class Vehicle
{
...
}
class Car : Vehicle
{
...
}
The error message will be something like this:
'Car': cannot derive from sealed type 'Vehicle'