방법: 제네릭 클래스 사용(Visual Basic)

형식 매개 변수를 사용하는 클래스를 제네릭 클래스라고 합니다. 제네릭 클래스를 사용하는 경우 각 매개 변수에 대한 형식 인수를 제공하여 제네릭 클래스에서 생성된 클래스를 만들 수 있습니다. 생성된 클래스 형식의 변수를 선언하고 생성된 클래스 인스턴스를 만든 다음 해당 변수에 할당할 수 있습니다.

클래스 이외에 제네릭 구조체, 인터페이스, 프로시저, 대리자 등을 정의하여 사용할 수도 있습니다.

다음 절차에서는 .NET Framework에 정의된 제네릭 클래스를 사용하여 인스턴스를 만듭니다.

형식 매개 변수를 갖는 클래스를 사용하려면

  1. 소스 파일의 시작 지점에 Imports 문(.NET 네임스페이스 및 형식)을 포함시켜 System.Collections.Generic 네임스페이스를 가져옵니다. 그렇게 하면 System.Collections.Generic.Queue<T> 클래스를 정규화하지 않고 참조하여 System.Collections.Queue와 같은 다른 큐 클래스와 구분할 수 있습니다.

  2. 일반적인 방법을 사용하지만 클래스 이름 바로 뒤에 (Of type)을 추가하여 개체를 만듭니다.

    다음 예제에서는 동일한 클래스(System.Collections.Generic.Queue<T>)를 사용하여 포함된 항목의 데이터 형식이 서로 다른 두 큐 개체를 만듭니다. 각 큐의 끝에 항목을 추가한 다음 각 큐의 앞에서 항목을 제거하고 표시합니다.

    Public Sub usequeue()
      Dim queueDouble As New System.Collections.Generic.Queue(Of Double)
      Dim queueString As New System.Collections.Generic.Queue(Of String)
      queueDouble.Enqueue(1.1)
      queueDouble.Enqueue(2.2)
      queueDouble.Enqueue(3.3)
      queueDouble.Enqueue(4.4)
      queueString.Enqueue("First string of three")
      queueString.Enqueue("Second string of three")
      queueString.Enqueue("Third string of three")
      Dim s As String = "Queue of Double items (reported length " &
          CStr(queueDouble.Count) & "):"
      For i As Integer = 1 To queueDouble.Count
        s &= vbCrLf & CStr(queueDouble.Dequeue())
      Next i
      s &= vbCrLf & "Queue of String items (reported length " &
          CStr(queueString.Count) & "):"
      For i As Integer = 1 To queueString.Count
        s &= vbCrLf & queueString.Dequeue()
      Next i
      MsgBox(s)
    End Sub
    

참고 항목

작업

방법: 다른 데이터 형식에 동일한 기능을 제공할 수 있는 클래스 정의(Visual Basic)

참조

Of 절(Visual Basic)

Imports 문(.NET 네임스페이스 및 형식)

개념

Visual Basic의 데이터 형식

Visual Basic의 제네릭 형식(Visual Basic)

공용 언어 사양