Gerenciando seus Objetos com Coleções

Coleções fornecem um meio ideal para gerenciar uma variedade de objetos.Você pode adicionar e remover objetos de uma coleção, recuperá-los baseados em um índice ou chave, e usar oFor each... Next demonstrativo (Visual Basic) para iterar pelos itens de sua coleção.

Coleções sem segurança de tipo

No entanto, a grande flexibilidade das coleções podem minar a robustez de sua classe.Por exemplo, a coleção fornecida por Visual Basic armazena todos seus elementos com o tipo Object , assim você pode adicionar um item de qualquer tipo.Não nenhuma segurança contra tipos de dados inapropriados que podem ser adicionados, e quando você acessar um elemento, você deve convertê-lo de Object para o tipo de dados desejado.

Coleções Especializadas

O .NET Framework fornece várias alternativas para a coleção de Visual Basic.O System.Collections namespace possui classes de coleções com funcionalidade específica, como uma fila ou lista ordenada, e o System.Collections.Specialized namespace contém classes de coleção de natureza específica, como HybridDictionary.

Coleções com segurança de tipo

Para evitar as desvantagens de elementos com tipo Object, você pode usar as coleções genéricas do System.Collections.Generic namespace.Essas coleções fornecem segurança de tipo e te permitem limitar os elementos de uma coleção para um único tipo específico de tipo de dados.

Abordagens para Usar Coleções

Há três abordagens gerais que você pode tomar para implementar gerenciamento de objetos usando coleções.Considere uma aplicação que define uma classe widgetRepository, que organiza e expõe objetos widget para componentes clientes.Para implementar widgetRepository com uma coleção, você pode seguir uma das seguintes estratégias.

  • Use uma Classe de Coleção Na classe widgetRepository, declare uma variável widgetsColl como instância de Coleção de Classes do Visual Basic ou uma das classes na e System.Collections, System.Collections.Generic, ou System.Collections.Specialized namespaces.Torne a variável pública e use a palavra chave Novo (Visual Basic) para criar uma instância de coleção.Para obter mais informações, consulte Como: Definir coleções em suas classes.

  • Herdando de uma Classe Coleção Implemente sua própria classe widgetsColl através de herdando da classe CollectionBase .Na classe widgetRepository , defina uma instância da classe widgetsColl e uma propriedade que retorna essa instância.Para obter mais informações, consulte Como: Definir coleções em suas classes.

  • Escreva você mesmo a Coleção. Implemente a funcionalidade de coleção na classe widgetRepository escrevendo as classes e procedimentos apropriados.Essa abordagem é mais útil se você precisa de uma funcionalidade de coleção na sua classe mas não pode herdar de nenhuma das classes de coleção existentes.Isso pode ser possível, por exemplo, no caso raro em que sua classe precisasse de herdar de uma classe diferente de uma classe de coleção.Como ela não pode herdar de mais de uma classe, você teria que definir e implementar membros de coleção.

Consulte também

Conceitos

Gerenciando grupos de objetos

Coleção de Classes do Visual Basic

Referência

System.Collections

System.Collections.Generic

System.Collections.Specialized