Inheritance
Perhaps the best way to describe inheritance as it is used in VB.NET is to begin with an example.
The classes in a given application often have relationships to one another. Consider, for instance, our Employee information application. The Employee objects in the class CEmployee represent the general aspects common to all employees — name, address, salary, and so on.
Of course, the executives of the company will have different prerequisites than, say, the secretaries. So it is reasonable to define additional classes named CExecutive and CSecretary, each with properties and methods of its own. On the other hand, an executive is also an employee, and there is no reason to define different Name properties in the two cases. This would be inefficient and wasteful.
This situation is precisely what inheritance is designed for. First, we define the CEmployee class, which implements a Salary property and an IncSalary method:
' Employee class
Public Class CEmployee
' Salary property is read/write
Private mdecSalary As Decimal
Property Salary( ) As Decimal
Get
Salary = mdecSalary
End Get
Set
mdecSalary = Value
End Set
End Property
Public Overridable Sub IncSalary(ByVal sngPercent As Single)
mdecSalary = mdecSalary * (1 + CDec(sngPercent))
End Sub
End ClassNext, we define the CExecutive class:
' Executive Class Public Class CExecutive Inherits CEmployee ' Calculate salary increase based on 5% car allowance as well Overrides Sub IncSalary(ByVal sngPercent As Single) Me.Salary = Me.Salary ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access