Exemplarische Vorgehensweise: Definieren von Klassen (Visual Basic)
In dieser exemplarischen Vorgehensweise wird veranschaulicht, wie Klassen definiert werden, die Sie dann zum Erstellen von Objekten verwenden können. Außerdem wird gezeigt, wie Sie der neuen Klasse Eigenschaften und Methoden hinzufügen und wie ein Objekt initialisiert wird.
Hinweis
Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio angezeigt als die in den folgenden Anweisungen aufgeführten. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Personalisieren der IDE.
So definieren Sie eine Klasse
Erstellen Sie ein Projekt, indem Sie im Menü Datei auf Neues Projekt klicken. Das Dialogfeld Neues Projekt wird angezeigt.
Wählen Sie Windows-Anwendung aus der Liste der Visual Basic-Projektvorlagen aus, um das neue Projekt anzuzeigen.
Fügen Sie dem Projekt eine neue Klasse hinzu, indem Sie im Menü Projekt auf Klasse hinzufügen klicken. Das Dialogfeld Neues Element hinzufügen wird angezeigt.
Wählen Sie die Klassen-Vorlage aus.
Benennen Sie die neue Klasse
UserNameInfo.vb
, und klicken Sie dann auf Hinzufügen , um den Code für die neue Klasse anzuzeigen.Public Class UserNameInfo End Class
Hinweis
Sie können den Visual Basic Code-Editor verwenden, um Ihrem Startformular eine Klasse hinzuzufügen, indem Sie das
Class
Schlüsselwort gefolgt vom Namen der neuen Klasse eingeben. Der Code-Editor stellt eine entsprechendeEnd Class
Anweisung für Sie bereit.Definieren Sie ein privates Feld für die Klasse, indem Sie den folgenden Code zwischen den
Class
undEnd Class
-Anweisungen hinzufügen:Private userNameValue As String
Das Deklarieren des Felds als
Private
bedeutet, dass es nur innerhalb der Klasse verwendet werden kann. Sie können Felder außerhalb einer Klasse verfügbar machen, indem Sie Zugriffsmodifizierer verwenden, z. B.Public
, die mehr Zugriff bieten. Weitere Informationen finden Sie unter Zugriffsebenen in Visual Basic.Definieren Sie eine Eigenschaft für die Klasse, indem Sie den folgenden Code hinzufügen:
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
Definieren Sie eine Methode für die Klasse, indem Sie den folgenden Code hinzufügen:
Public Sub Capitalize() ' Capitalize the value of the property. userNameValue = UCase(userNameValue) End Sub
Definieren Sie einen parametrisierten Konstruktor für die neue Klasse, indem Sie eine Prozedur mit dem Namen
Sub New
hinzufügen:Public Sub New(ByVal UserName As String) ' Set the property value. Me.UserName = UserName End Sub
Der
Sub New
Konstruktor wird automatisch aufgerufen, wenn ein Objekt basierend auf dieser Klasse erstellt wird. Dieser Konstruktor legt den Wert des Felds fest, das den Benutzernamen enthält.
So erstellen Sie eine Schaltfläche zum Testen der Klasse
Ändern Sie das Startformular in den Entwurfsmodus, indem Sie im Solution Explorer mit der rechten Maustaste auf den Namen klicken und dann auf den Ansichts-Designer klicken. Standardmäßig heißt das Startformular für Windows-Anwendungsprojekte Form1.vb. Das Hauptformular wird dann angezeigt.
Fügen Sie dem Hauptformular eine Schaltfläche hinzu, und doppelklicken Sie darauf, um den Code für den
Button1_Click
Ereignishandler anzuzeigen. Fügen Sie den folgenden Code hinzu, um die Testprozedur aufzurufen:' 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)
So führen Sie Ihre Anwendung aus
Führen Sie Ihre Anwendung aus, indem Sie F5 drücken. Klicken Sie auf die Schaltfläche im Formular, um die Testprozedur aufzurufen. Es wird eine Meldung angezeigt, die besagt, dass das Original
UserName
"MOORE, BOBBY" lautet, da die Prozedur dieCapitalize
Methode des Objekts aufgerufen hat.Klicken Sie auf OK, um das Meldungsfeld zu schließen. Die
Button1 Click
Prozedur ändert den Wert derUserName
Eigenschaft und zeigt eine Meldung an, dass der neue Wert vonUserName
"Worden, Joe" lautet.