Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
Override, in C#, is a keyword used to replace a virtual member that is defined in a base class with the definition of that member in the derived class.
The override modifier allows programmers to specify the specialization of an existing virtual member inherited from a base class to provide a new implementation of that member in the derived class. It can be used with a method, property, indexer or an event that needs to be modified or extended in a derived class.
The override modifier is intended to implement the concept of polymorphism in C#.
Override differs from new modifiers in that the former is used only to override a virtual member of a base class while the latter also helps to override a non-virtual member defined in a base class by hiding the definition contained in the base class.
Override is mostly used in the context of virtual method, in which the execution of a type of method is determined by the runtime type of the instance on which the method is invoked. During the invocation, the caller need not know that the called object was an instance of derived class.
For example, if Shape is a base class that provides the basic implementation that is common for all the objects of its class, it can be defined with a virtual method, CalculateArea. Square can be a class derived from Shape, which can override the CalculateArea method to implement the logic necessary for calculating the area of a square.
To override a method in a derived class: