Även Microsofts Visual Basic förbjuder multipelt arv , det erbjuder inkapsling som , när de används på ett kreativt , kan uppnå samma effekt . Arv och inkapsling är två grunderna för objektorienterad programmering , var mycket lättare att förstå genom exempel än definition . Båda teknikerna finns sätt att härleda och utöka nya funktioner från befintlig kod . Härled en ny klass genom att ärva en då kapsla de andra klasserna . Saker du behöver
Microsoft Visual Studio eller Visual Basic Express 2010 Review, Grundläggande kunskaper i Visual Basic.Net
Visa fler instruktioner
1
Öppna Visual Studio och skapa ett nytt Visual Basic konsol program som heter MultiClassDemo . Klicka på " File " och sedan " Ny " och fylla den nya ansökningsblanketten .
2
Skapa en ny klass som kallas Customer . Klicka på " Projekt " och sedan " Ny klass " sedan in kunden i namnfältet . När kodeditorn fönstret visas , modifiera koden enligt följande .
Public class Kund
Public Property customerId As String = " "
Public Property Företagsnamn As String = " "
Public Property Kontakt As String = " "
Public Overridable Sub Load ( ByVal id As String ) katalog
Kundnr = id
Företagsnamn = " Acme Rental "
Kontakt = " Joe Smith "
End Sub
End Class
Denna klass beskriver en Kund objekt med egenskaper för ID , namn och kontaktuppgifter . Load metoden tilldelar värden till egenskaperna .
3
Upprepa ovanstående steg för att skapa en kredit klass .
Public Class Credit
Public Property CustomerID As String = " "
Public Property CreditScore As String = " "
Public Property ReportDate som Date = Date.MinValue
Public Sub Load ( ByVal id As String )
Kundnr = id
CreditScore = " A + "
ReportDate = # 6/1/2011 #
End Sub
End Class
Credit klassen har ID , kredit värdering och rapportegenskaper datum samt egen Load metod .
4
Skapa en tredje klass som kallas CustomerCredit och lägga den ärvda uttalande enligt följande .
Public Class CustomerCredit
ärver Kund
När CustomerCredit klassen får byggt av kompilatorn , ärver den de Kundnr , Företagsnamn och Kontakt egenskaper samt Load -metoden från kunden klass .
5
Skapa en ny privat område som kallas poäng att kapsla en instans av Credit klassen .
privat värdering som ny kredit
6
Frilägg Credit klassens egenskaper med hjälp av härledda egenskaper .
Public Property CreditScore As String
Få
Return score.CreditScore
End Get
Set ( ByVal value As String ) katalog
score.CreditScore = värde
End Set
End Property
Public Property ReportDate Som Datum
Get
Return score.ReportDate
End Få
Set ( ByVal value As Date ) katalog
score.ReportDate = värde
Slut Ställ
End Property
Även om inte lika bekväma som multipelt arv , gör detta exponera Credit egenskaper .
7
Åsidosätt Kundens Load metoden att läsa både Kunden och egenskaper kredit .
Public Åsidosätter Sub Load ( ByVal id As String ) katalog
MyBase.Load ( id ) katalog
score.Load ( id ) katalog
End Sub
End Class
8
Lägg koden till den viktigaste funktionen i Module1 att testa nya härledda klassen . Klicka på " Windows " och klicka sedan på " Module1.vb " . Uppdatera koden på följande sätt :
Modul Module1
Sub Main ( ) katalog
Dim Cust Som New CustomerCredit
cust.Load ( "1234 " ) katalog
Console.WriteLine ( " Kund = " & cust.CustomerID ) katalog
Console.WriteLine ( " Company : " & cust.CompanyName ) katalog
Console.WriteLine ( " Kontakt : " & cust.Contact ) katalog
Console.WriteLine ( " Credit Score : " & cust.CreditScore ) katalog
Console.WriteLine ( " Report date : " & cust.ReportDate.ToShortDateString )
End Sub
ändmodul
9
Klicka på " F5 " för att testa programmet .