Share via


HOW TO:在類別中定義集合

更新:2007 年 11 月

您可以將集合加入至其中一個類別,藉此管理類別 (Class) 所使用的物件群組。若要這麼做,最簡單的方法是將 Collection 型別的公用 (Public) 變數加入至您的類別。例如,假設有個名為 widgetRepository 的類別,其作用是管理 (Manage) 和公開 (Expose) widget 物件。您必須建立 widgetColl 變數來參考 widget 集合,如下列程序所述。

定義簡單的集合

若要在類別中定義簡單的集合

  • 建立公用 (Public) 變數以做為物件的集合。

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

    類別 (Class) widgetRepository 現在就具有可加入 widget 物件的公用 (Public) 集合。接著您便可以使用 For Each...Next 陳述式 (Visual Basic) 來處理集合元素,如下列程式碼所示。

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

    上述範例中所定義的 widgetColl 集合並不是「強型別 (Strong Typed)」,這表示您可以在其中加入任何型別的物件,而不僅限於 widget 物件。這可能會造成型別安全 (Type Safety) 的問題。例如,假設您將 String 加入至集合,如下列程式碼所示。

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

    如果這樣做,則上述程序中的 For Each 迴圈 (Loop) 就會在執行階段擲回 ArgumentException 例外狀況 (Exception),因為集合中有不是型別 widget 的元素。

    如果想要確保型別安全 (Type Safety),我們建議您定義泛型類別。如需詳細資訊和範例,請參閱 HOW TO:定義型別安全集合

請參閱

工作

HOW TO:定義型別安全集合

概念

Visual Basic 集合類別

Visual Basic 中的集合

Visual Basic 中的泛型型別

參考

Option Strict 陳述式