Dela via


Genomgång: Definiera klasser (Visual Basic)

Den här genomgången visar hur du definierar klasser, som du sedan kan använda för att skapa objekt. Den visar också hur du lägger till egenskaper och metoder i den nya klassen och visar hur du initierar ett objekt.

Kommentar

Datorn kan visa olika namn eller platser för vissa av Visual Studio-användargränssnittselementen i följande instruktioner. Den Visual Studio-utgåva som du har och de inställningar som du använder avgör dessa element. Mer information finns i Anpassa IDE.

Så här definierar du en klass

  1. Skapa ett projekt genom att klicka på Nytt projektArkiv-menyn . Dialogrutan Nytt projekt visas.

  2. Välj Windows-program i listan över Visual Basic-projektmallar för att visa det nya projektet.

  3. Lägg till en ny klass i projektet genom att klicka på Lägg till klassProjekt-menyn . Dialogrutan Lägg till nytt objekt visas.

  4. Välj mallen Klass .

  5. Ge den nya klassen UserNameInfo.vbnamnet och klicka sedan på Lägg till för att visa koden för den nya klassen.

    Public Class UserNameInfo
    End Class
    

    Kommentar

    Du kan använda Visual Basic Code Editor för att lägga till en klass i startformuläret genom att skriva nyckelordet Class följt av namnet på den nya klassen. Kodredigeraren innehåller en motsvarande End Class instruktion åt dig.

  6. Definiera ett privat fält för klassen genom att lägga till följande kod mellan - och-uttrycken ClassEnd Class :

    Private userNameValue As String
    

    Att deklarera fältet som Private innebär att det endast kan användas i klassen. Du kan göra fält tillgängliga utanför en klass med hjälp av åtkomstmodifierare som Public ger mer åtkomst. Mer information finns i Åtkomstnivåer i Visual Basic.

  7. Definiera en egenskap för klassen genom att lägga till följande kod:

    Public Property UserName() As String
        Get
            ' Gets the property value.
            Return userNameValue
        End Get
        Set(ByVal Value As String)
            ' Sets the property value.
            userNameValue = Value
        End Set
    End Property
    
  8. Definiera en metod för klassen genom att lägga till följande kod:

    Public Sub Capitalize()
        ' Capitalize the value of the property.
        userNameValue = UCase(userNameValue)
    End Sub
    
  9. Definiera en parameteriserad konstruktor för den nya klassen genom att lägga till en procedur med namnet Sub New:

    Public Sub New(ByVal UserName As String)
        ' Set the property value.
        Me.UserName = UserName
    End Sub
    

    Konstruktorn Sub New anropas automatiskt när ett objekt baserat på den här klassen skapas. Den här konstruktorn anger värdet för det fält som innehåller användarnamnet.

Så här skapar du en knapp för att testa klassen

  1. Ändra startformuläret till designläge genom att högerklicka på namnet i Solution Explorer och sedan klicka på Visa designer. Startformuläret för Windows-programprojekt heter som standard Form1.vb. Huvudformuläret visas sedan.

  2. Lägg till en knapp i huvudformuläret och dubbelklicka på den för att visa koden för Button1_Click händelsehanteraren. Lägg till följande kod för att anropa testproceduren:

    ' Create an instance of the class.
    Dim user As New UserNameInfo("Moore, Bobby")
    ' Capitalize the value of the property.
    user.Capitalize()
    ' Display the value of the property.
    MsgBox("The original UserName is: " & user.UserName)
    ' Change the value of the property.
    user.UserName = "Worden, Joe"
    ' Redisplay the value of the property.
    MsgBox("The new UserName is: " & user.UserName)
    

Så här kör du programmet

  1. Kör programmet genom att trycka på F5. Klicka på knappen i formuläret för att anropa testproceduren. Det visar ett meddelande om att originalet UserName är "MOORE, BOBBY", eftersom proceduren kallas Capitalize -metoden för objektet.

  2. Klicka på OK för att stänga meddelanderutan. Proceduren Button1 Click ändrar värdet för UserName egenskapen och visar ett meddelande om att det nya värdet UserName för är "Worden, Joe".

Se även