Compile time polymorphism - Method OverLoading
Polymorphism is an important concept of OOPs. Polymorphism feature enables classes to provide different implementation of methods having the same name. This feature allows us to define any number of methods with the same name but different signatures. A signature is a method’s name and the number, type and the order of parameters.
This is also sometimes called as method overloading. In method overloading, a method is executed depending on the number and type of parameters passed to it.
When we compile the class, the compiler binds the appropriate method to the object based on the method’s arguments. This is called early binding and this process is referred to as compile time polymorphism. The example given below demonstrates compile time polymorphism using overloaded methods.
Public Class ArthemeticSum
Public Function Sum(ByVal a As Integer, ByVal b As Integer) As Integer
Dim result = a + b
Return result
End Function
Public Function Sum(ByVal a As Long, ByVal b As Long) As Long
Dim result = a + b
Return result
End Function
Public Function Sum(ByVal a As Double, ByVal b As Double) As Double
Dim result = a + b
Return result
End Function
End Class
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim obj As ArthemeticSum = New ArthemeticSum()
Dim intTot = obj.Sum(10, 10)
MessageBox.Show(intTot.ToString())
Dim DoubleTot = obj.Sum(10.2, 10.89)
MessageBox.Show(DoubleTot.ToString())
End Sub
In the above code, we overload the method ‘Sum’ by passing different types of values and call each of the overloaded Sum methods from the Form_Load method.
Object Oriented Programming Articles