Megosztás a következőn keresztül:


Útmutató: Osztályok definiálása (Visual Basic)

Ez az útmutató bemutatja, hogyan definiálhat osztályokat, amelyeket aztán objektumok létrehozásához használhat. Azt is bemutatja, hogyan adhat hozzá tulajdonságokat és metódusokat az új osztályhoz, és bemutatja, hogyan inicializálhat egy objektumot.

Feljegyzés

Előfordulhat, hogy a számítógép különböző neveket vagy helyeket jelenít meg a Visual Studio felhasználói felületének egyes elemeihez az alábbi utasításokban. Ezeket az elemeket a Visual Studio-kiadás és a használt beállítások határozzák meg. További információ: Az IDE személyre szabása.

Osztály definiálása

  1. Hozzon létre egy projektet a Fájl menü Új projekt elemére kattintva. Megjelenik a New project (Új projekt) párbeszédpanel.

  2. Válassza a Windows-alkalmazást a Visual Basic-projektsablonok listájából az új projekt megjelenítéséhez.

  3. Adjon hozzá egy új osztályt a projekthez a Projekt menü Osztály hozzáadása parancsára kattintva. Megjelenik az Add New Item (Új elem hozzáadása) párbeszédpanel.

  4. Válassza ki az Osztálysablont .

  5. Nevezze el az új osztálytUserNameInfo.vb, majd kattintson a Hozzáadás gombra az új osztály kódjának megjelenítéséhez.

    Public Class UserNameInfo
    End Class
    

    Feljegyzés

    A Visual Basic Code Editor használatával osztályt adhat hozzá az indítási űrlaphoz a Class kulcsszó beírásával, majd az új osztály nevének beírásával. A Kódszerkesztő egy megfelelő End Class utasítást biztosít Önnek.

  6. Definiáljon egy privát mezőt az osztályhoz a következő kód hozzáadásával az és End Class az Class utasítások között:

    Private userNameValue As String
    

    A mező Private deklarálása azt jelenti, hogy csak az osztályon belül használható. Az osztályon kívüli mezőket olyan hozzáférési módosítók használatával teheti elérhetővé, amelyek Public több hozzáférést biztosítanak. További információ: Hozzáférési szintek a Visual Basicben.

  7. Adjon meg egy tulajdonságot az osztályhoz a következő kód hozzáadásával:

    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. Adjon meg egy metódust az osztályhoz a következő kód hozzáadásával:

    Public Sub Capitalize()
        ' Capitalize the value of the property.
        userNameValue = UCase(userNameValue)
    End Sub
    
  9. Paraméteres konstruktor definiálása az új osztályhoz egy következő nevű Sub Neweljárás hozzáadásával:

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

    A Sub New konstruktort a rendszer automatikusan meghívja, amikor létrehoz egy, az osztályon alapuló objektumot. Ez a konstruktor a felhasználónevet tartalmazó mező értékét állítja be.

Gomb létrehozása az osztály teszteléséhez

  1. Módosítsa az indítási űrlapot tervezési módra úgy, hogy a jobb gombbal a nevére kattint a Megoldáskezelő, majd kattintson a Nézet Tervező parancsra. Alapértelmezés szerint a Windows-alkalmazásprojektek indítási űrlapjának neve Form1.vb. Ekkor megjelenik a fő űrlap.

  2. Adjon hozzá egy gombot a főűrlaphoz, és kattintson rá duplán az eseménykezelő kódjának Button1_Click megjelenítéséhez. Adja hozzá a következő kódot a tesztelési eljárás meghívásához:

    ' 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)
    

Az alkalmazás futtatása

  1. Futtassa az alkalmazást az F5 billentyű lenyomásával. Kattintson az űrlap gombra a tesztelési eljárás meghívásához. Megjelenik egy üzenet, amely szerint az eredeti UserName "MOORE, BOBBY", mert az eljárás az Capitalize objektum metódusa.

  2. Kattintson az OK gombra az üzenetmező bezárásához. Az Button1 Click eljárás megváltoztatja a UserName tulajdonság értékét, és egy üzenetet jelenít meg, amely szerint az új érték UserName "Worden, Joe".

Lásd még