Partager via


Comment : définir des collections dans vos classes

Mise à jour : novembre 2007

Vous pouvez ajouter une collection à l'une de vos classes pour gérer des groupes d'objets utilisés par votre classe. Pour cela, la solution la plus simple consiste à ajouter une variable publique de type Collection à votre classe. Prenons l'exemple d'une classe hypothétique nommée widgetRepository qui gère et expose des objets widget. Vous pouvez créer une variable widgetColl pour faire référence à une collection widget, comme discuté dans la procédure suivante.

Définition d'une collection simple

Pour définir une collection simple dans une classe

  • Créez une variable publique assumant la fonction de collection pour vos objets.

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

    La classe widgetRepository possède désormais une collection publique à laquelle peuvent être ajoutés des objets widget. Vous pouvez utiliser ensuite une For Each...Next, instruction (Visual Basic) pour traiter les éléments de la collection, comme le montre le code suivant.

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

    La collection widgetColl définie dans l'exemple précédent n'est pas fortement typée, ce qui signifie que vous pouvez lui ajouter tout type d'objet, pas seulement des objets widget. Cela peut entraîner des problèmes de sécurité de type. Par exemple, supposez que vous ajoutez une String à la collection, comme dans le code suivant.

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

    Si vous faites cela, la boucle For Each de la procédure précédente lève une exception ArgumentException au moment de l'exécution car un élément de la collection n'est pas de type widget.

    Nous vous conseillons de définir une classe générique lorsque vous souhaitez garantir la sécurité de type. Pour obtenir des informations supplémentaires et un exemple, consultez Comment : définir des collections de type sécurisé.

Voir aussi

Tâches

Comment : définir des collections de type sécurisé

Concepts

Classe de la collection Visual Basic

Collections en Visual Basic

Types génériques en Visual Basic

Référence

Option Strict, instruction