Freigeben über


Hinzufügen von Methoden zu einer Klasse

Aktualisiert: November 2007

In dieser Lektion erfahren Sie, wie Sie einer Klasse Methoden hinzufügen, damit sie Aktionen ausführen kann.

In der früheren Lektion Genauere Betrachtung: Eigenschaften, Methoden und Ereignisse haben Sie erfahren, dass die meisten Objekte Aktionen ausführen können. Diese Aktionen werden als Methoden bezeichnet. Die von Ihnen in der Lektion Modellieren eines realen Objekts: Erstellen der ersten Klasse erstellte Persons-Klasse stellt eine Person dar. Personen können eine Vielzahl von Aktionen ausführen, und für die Persons-Klasse können diese Aktionen als Klassenmethoden ausgedrückt werden.

Class-Methoden

Bei den Methoden einer Klasse handelt es sich um die Sub-Prozeduren oder Function-Prozeduren, die in der Klasse deklariert werden. So kann eine Account-Klasse über eine Sub-Prozedur mit dem Namen Recalculate verfügen, die den Saldo aktualisieren würde, oder eine CurrentBalanceFunction-Prozedur, die den aktuellen Saldo zurückgibt. Der Code zum Deklarieren dieser Methoden könnte wie folgt aussehen:

Public Sub Recalculate()
    ' add code to recalculate the account.
End Sub
Public Function CurrentBalance(ByVal AccountNumber As Integer) As Double
    ' add code to return a balance.
End Function

Während die meisten Klassenmethoden öffentlich sind, möchten Sie vielleicht auch Methoden hinzufügen, die ausschließlich von der Klasse selbst verwendet werden können. Die Persons-Klasse könnte z. B. über eine eigene Funktion verfügen, um das Alter einer Person zu berechnen. Durch das Deklarieren der Funktion als Private kann sie außerhalb der Klasse nicht erkannt oder aufgerufen werden.

Der Code für eine private Funktion könnte wie folgt aussehen:

Private Function CalcAge(ByVal year As Integer) As Integer
    CalcAge = My.Computer.Clock.LocalTime.Year - year
End Function

Sie können den Code, mit dem der Wert von CalcAge berechnet wird, später ändern, und die Methode würde weiterhin gut funktionieren, ohne dass Code geändert würde, in dem die Methode verwendet wird. Das Ausblenden von Code, der die Methode ausführt, wird als Kapselung bezeichnet.

In der Persons-Klasse werden Sie eine öffentliche Methode, die einen vollständigen Namen zurückgibt, und eine private Funktion für die Berechnung des Alters erstellen

Übung

So fügen Sie der Klasse eine Methode hinzu

  1. Öffnen Sie das in der vorherigen Lektion erstellte Persons-Projekt. Wenn Sie das Projekt nicht gespeichert haben, müssen Sie zuerst zur vorherigen Lektion, Hinzufügen von Eigenschaften zu einer Klasse, zurückkehren und die Prozeduren abschließen.

  2. Wählen Sie im Projektmappen-Explorer den Eintrag Persons.vb aus, und klicken Sie anschließend im Menü Ansicht auf Code.

  3. Fügen Sie unterhalb der Eigenschaftenprozeduren den folgenden Code hinzu.

    Public Function FullName() As String
        If middleNameValue <> "" Then
            FullName = firstNameValue & " " & middleNameValue & " " _
                                      & lastNameValue
        Else
            FullName = firstNameValue & " " & lastNameValue
        End If
    End Function
    
    Private Function CalcAge(ByVal year As Integer) As Integer
        CalcAge = My.Computer.Clock.LocalTime.Year - year
    End Function
    
  4. Ändern Sie den Code in der Age-Eigenschaftenprozedur, um die private Funktion zu verwenden.

    ReadOnly Property Age() As String
        Get
            ' Age = My.Computer.Clock.LocalTime.Year - birthDateValue
            Age = CalcAge(birthYearValue)
        End Get
    End Property
    
  5. Klicken Sie im Menü Datei auf Alle speichern, um Ihre Änderungen zu speichern.

Nächste Schritte

In dieser Lektion haben Sie erfahren, wie sowohl öffentliche als auch private Methoden einer Klasse hinzugefügt werden. Weitere Informationen zu Methoden finden Sie unter Genauere Betrachtung: Erstellen von mehreren Versionen derselben Methode durch Überladen. Wahlweise können Sie auch zur nächsten Lektion übergehen, in der Sie mehr über das Hinzufügen von Ereignissen zu Klassen erfahren.

Nächste Lektion: Hinzufügen von Ereignissen zu einer Klasse.

Siehe auch

Aufgaben

Hinzufügen von Eigenschaften zu einer Klasse

Weitere Ressourcen

Programmieren mit Objekten: Verwenden von Klassen