Polymorphism using Abstract Classes in Visual Basic.NET 2005
(Page 1 of 6 )
This article gives you an in-depth understanding of abstract methods, abstract classes and polymorphism using abstract classes in Visual Basic 2005.
A
downloadable zip file is available for this article.
If you are new to OOP in Visual Basic.NET, I strongly suggest that you go through the following links:
Using Constructors with Object-Oriented Database Development
Properties and Object-Oriented Database Development
Using Methods with Object-Oriented Database Development
An Introduction to Object-Oriented Database Development
The entire source code for this article is available in the form of a downloadable zip file. The solution was developed using Microsoft Visual Studio 2005 Professional Edition on Microsoft Windows Server 2003 Enterprise Edition. I didn't really test it in any other environment. I request that you post in the discussion area if you have any problems in execution.
Life without the "Abstract" class in Visual Basic 2005
Before understanding the "Abstract" class, let us go through an example with a set of classes, which demonstrates the inconveniences of repeating the code.
The following is a class named "Rectangle" defined with length and breadth as properties along with a method named "GetArea" to calculate the area of a rectangle:
Public Class Rectangle
Private _l As Double
Private _b As Double
Public Sub New(ByVal length As Double, ByVal breadth As Double)
Me.L = length
Me.B = breadth
End Sub
Public Property L() As Double
Get
Return _l
End Get
Set(ByVal value As Double)
_l = value
End Set
End Property
Public Property B() As Double
Get
Return _b
End Get
Set(ByVal value As Double)
_b = value
End Set
End Property
Public Function GetArea() As Double
Return _l * _b
End Function
End Class
There exists nothing special about the previous class apart from properties, methods and a constructor. Let us consider two more classes, "EquiTriangle" and "Square," which have properties that are similar to those of our "Rectangle" class. This will be continued in the next section.
Next: Life without the Abstract class in Visual Basic 2005: continued >>
More Visual Basic.NET Articles
More By Jagadish Chaterjee