Freigeben über


Gewusst wie: Definieren von Auflistungen in eigenen Klassen

Aktualisiert: November 2007

Sie können zu einer Ihrer Klassen eine Auflistung hinzufügen, mit der Sie Objektgruppen verwalten, die von der Klasse verwendet werden. Die einfachste Möglichkeit hierfür besteht im Hinzufügen einer öffentlichen Variablen des Typs Collection zu der Klasse. Gehen wir von einer hypothetischen Klasse mit der Bezeichnung widgetRepository aus, die widget-Objekte verwaltet und offen legt. Sie können eine widgetColl-Variable erstellen, um auf eine widget-Auflistung zu verweisen, wie in den folgenden Schritten erläutert wird.

Definieren einer einfachen Auflistung

So definieren Sie eine einfache Auflistung in einer Klasse

  • Erstellen Sie eine öffentliche Variable, die als Auflistung für die Objekte fungiert.

    Public Class widgetRepository
        Public widgetColl As New Microsoft.VisualBasic.Collection()
        ' Insert code to implement additional functionality.
    End Class
    

    Die widgetRepository-Klasse verfügt jetzt über eine öffentliche Auflistung, der widget-Objekte hinzugefügt werden können. Anschließend können Sie die Auflistungselemente von einer For Each...Next-Anweisung (Visual Basic) verarbeiten lassen, wie das folgende Codebeispiel zeigt.

    For Each aWidget As widget In widgetColl
        ' Insert code to process widgetColl elements
    Next aWidget
    

    Die im vorhergehenden Beispiel definierte widgetColl-Auflistung ist nicht stark typisiert, d. h., Sie können jeden beliebigen Objekttyp hinzufügen, nicht nur widget-Objekte. Dies kann zu Typsicherheitsproblemen führen. Nehmen Sie zum Beispiel an, Sie fügen der Auflistung wie im folgenden Code eine String hinzu.

    Dim notWidget As String = "This is not a widget object!"
    widgetColl.Add(notWidget)
    

    In diesem Fall löst die For Each-Schleife in der vorhergehenden Prozedur zur Laufzeit eine ArgumentException-Ausnahme aus, da ein Element der Auflistung nicht dem widget-Typ angehört.

    Es empfiehlt sich, eine generische Klasse zu definieren, wenn Sie Typsicherheit gewährleisten möchten. Weitere Informationen und ein Beispiel finden Sie unter Gewusst wie: Definieren von typsicheren Auflistungen.

Siehe auch

Aufgaben

Gewusst wie: Definieren von typsicheren Auflistungen

Konzepte

Visual Basic-Auflistungsklasse

Auflistungen in Visual Basic

Generische Typen in Visual Basic

Referenz

Option Strict-Anweisung