In OOP, Class Inheritance has been one of the most important topics and it has been around since 1967. The idea behind class inheritance is to enable the inheriting (derived) classes use attributes of the base classes. This enables programmers to reuse the code by having derived classes share the functionality of their base classes making maintenance easier.
Below is an example of using Class Inheritance in VB.NET.
Base Class MyRoom
Option Explicit On Option Strict On Imports System '* Base Class clsMyRoom Public Class clsMyRoom Private intWidth As Integer Private intLength As Integer ' constructor that takes 2 integers roomWidth and roomLength Public Sub New(ByVal rmWidth As Integer, ByVal rmLength As Integer) Me.intWidth = rmWidth Me.intLength = rmLength End Sub ' creates my room Public Sub CreateItem() Console.WriteLine("Creating item {0} units wide and {1} units long.", intWidth, intLength) End Sub End Class
Derived Class MyDesk (inherits MyRoom)
'* Child (derived) Class clsMyDesk '* Uses the Inherits Keyword Public Class clsMyDesk : Inherits clsMyRoom Private sColor As String Private sShape As String ' constructor that takes 2 strings (color, shape) and 2 integers (width, length) Public Sub New(ByVal dskColor As String, ByVal dskShape As String,_ ByVal dskWidth As Integer, ByVal dskLength As Integer) ' MyBase invokes the method of the Base Class MyBase.New(dskWidth, dskLength) Me.sColor = dskColor Me.sShape = dskShape End Sub ' creates my desk Public Shadows Sub CreateItem() ' MyBase points to clsMyRoom MyBase.CreateItem() Console.WriteLine("Desk will be in {0} color and have a {1} shape.", sColor, sShape) End Sub End Class
Module
Module Module1
Sub Main()
Dim myRoom As New clsMyRoom(20, 25)
myRoom.CreateItem()
Dim myDesk As New clsMyDesk("red", "rectangular", 2, 4)
myDesk.CreateItem()
System.Console.Read()
End Sub
End ModuleOutput
Creating item 20 units wide and 25 units long. ' myRoom.CreateItem() Creating item 2 units wide and 4 units long. ' myDesk.CreateItem() Desk will be in red color and have a rectangular shape.
{ 1 comment… read it below or add one }
another beautiful article Anshoo, could you please add more examples.
i like the way you explain in easy terms.