Class Inheritance Demo : Inheritance « Class « VB.Net

Home
VB.Net
1.2D
2.Application
3.Class
4.Data Structure
5.Data Types
6.Database ADO.net
7.Development
8.Event
9.File Directory
10.Generics
11.GUI
12.Language Basics
13.LINQ
14.Network Remote
15.Security
16.Thread
17.Windows Presentation Foundation
18.Windows System
19.XML
20.XML LINQ
VB.Net Tutorial
VB.Net by API
VB.Net » Class » InheritanceScreenshots 
Class Inheritance Demo
Class Inheritance Demo

Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.Windows.Forms
Imports System.Data
Imports System.Configuration
Imports System.Resources
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.IO
Imports System.Drawing.Printing


Module Module1

    Sub Main()

        Using objCar As New SportsCar
            'Set the horsepower and weight(kg)
            objCar.HorsePower = 240
            objCar.Weight = 1085

            'Display the details of the car
            DisplayCarDetails(objCar)
            DisplaySportsCarDetails(objCar)
        End Using

        'Wait for input from the user
        Console.ReadLine()
    End Sub

    'DisplayCarDetails - procedure that displays a car's details
    Sub DisplayCarDetails(ByVal theCar As Car)
        'Display the details of the car
        Console.WriteLine("Color: " & theCar.Color)
        Console.WriteLine("Number of doors: " & theCar.NumberOfDoors)
        Console.WriteLine("Current speed: " & theCar.Speed)
        Console.WriteLine("Acceleration rate: " & _
            theCar.CalculateAccelerationRate)
    End Sub

    'DisplaySportsCarDetails - procedure that displays a sports car's details
    Sub DisplaySportsCarDetails(ByVal theCar As SportsCar)
        'Display the details of the sports car
        Console.WriteLine()
        Console.WriteLine("Sports Car Horsepower: " & theCar.HorsePower)
        Console.WriteLine("Sports Car Weight: " & theCar.Weight)
        Console.WriteLine("Power to Weight Ratio: " & theCar.GetPowerToWeightRatio)
    End Sub
End Module

    Public Class Car
        Implements IDisposable

        Public Color As String
        Public HorsePower As Integer

        Private _speed As Integer
        Private _numberOfDoors As Integer

        Public ReadOnly Property Speed() As Integer
            Get
                Return _speed
            End Get
        End Property

        Public Sub Accelerate(ByVal accelerateBy As Integer)
            _speed += accelerateBy
        End Sub

        Public Property NumberOfDoors() As Integer
            Get
                Return _numberOfDoors
            End Get
            Set(ByVal value As Integer)
                If value >= And value <= Then
                    _numberOfDoors = value
                End If
            End Set
        End Property

        Public Function IsMoving() As Boolean
            If Speed = Then
                Return False
            Else
                Return True
            End If
        End Function

        Public Sub New()
            Color = "White"
            _speed = 0
            _numberOfDoors = 5
        End Sub

        Public Overridable Function CalculateAccelerationRate() As Double
            Return 4.2
        End Function

        Private disposed As Boolean = False

        ' IDisposable
        Private Overloads Sub Dispose(ByVal disposing As Boolean)
            If Not Me.disposed Then
                If disposing Then
                    ' TODO: put code to dispose managed resources
                End If

                ' TODO: put code to free unmanaged resources here
            End If
            Me.disposed = True
        End Sub

#Region " IDisposable Support "
        ' This code added by Visual Basic to correctly implement the disposable pattern.
        Public Overloads Sub Dispose() Implements IDisposable.Dispose
            ' Do not change this code.  Put cleanup code in Dispose(ByVal disposing As Booleanabove.
            Dispose(True)
            GC.SuppressFinalize(Me)
        End Sub

        Protected Overrides Sub Finalize()
            ' Do not change this code.  Put cleanup code in Dispose(ByVal disposing As Booleanabove.
            Dispose(False)
            MyBase.Finalize()
        End Sub
#End Region

    End Class


Public Class SportsCar
    Inherits Car

    Public Weight As Integer

    Public Function GetPowerToWeightRatio() As Double
        Return CType(HorsePower, Double/ CType(Weight, Double)
    End Function

    Public Sub New()
        'Change the default values
        Color = "Green"
        NumberOfDoors = 2
    End Sub

    Public Overrides Function CalculateAccelerationRate() As Double
        'You'll assume the same 4.2 value, but you'll multiply it
        'by the power/weight ratio
        Return 4.2 * GetPowerToWeightRatio()
    End Function
End Class

           
       
Related examples in the same category
1.Four Level HierachyFour Level Hierachy
2.Construct Class by Class CombinationConstruct Class by Class Combination
3.Property Shadow during InheritanceProperty Shadow during Inheritance
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.