VB.NET强类型集合

Sql*_*yan 9 vb.net generics collections class

我想在VB.NET中创建一个集合,但我只希望它接受某种类型的对象.例如,我想创建一个名为"FooCollection"的类,它在各个方面都像一个集合,但只接受"Foo"类型的对象.

我想我可以使用泛型,使用以下语法执行此操作:

    Public Class FooCollection(Of type As Foo)
        Inherits CollectionBase

        ...

    End Class
Run Code Online (Sandbox Code Playgroud)

但是当我编译它时我得到一个错误,我"必须实现一个默认的访问器",所以显然有些东西丢失了.我不想在实例化时指定它接受的类型 - 我希望FooCollection本身特定于它只接受Foo对象.我已经看到它在C#中使用强类型列表完成,所以我可能正在寻找的是VB.NET语法.

谢谢你的帮助!

编辑:谢谢你的回答.这样做,但我想让classtype命名为某种方式,我实际上完成了我正在寻找的以下代码:

Public Class FooCollection
    Inherits List(Of Foo)

End Class
Run Code Online (Sandbox Code Playgroud)

And*_*ore 10

你为什么不用List(Of Foo)它...它已经在VB.NET下了System.Collections.Generic.要使用,只需声明如下:

Private myList As New List(Of Foo) 'Creates a Foo List'
Private myIntList As New List(Of Integer) 'Creates an Integer List'
Run Code Online (Sandbox Code Playgroud)

有关MSDN > List(T) Class (System.Collections.Generic)更多信息,请参阅