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
Types génériques en Visual Basic