연습: 클래스 정의(Visual Basic)

이 연습에서는 클래스를 정의한 다음 해당 클래스에서 개체를 만드는 방법을 보여 줍니다. 새 클래스에 속성 및 메서드를 추가하는 방법과 개체를 초기화하는 방법도 보여 줍니다.

참고

다음 지침처럼 컴퓨터에서 Visual Studio 사용자 인터페이스 요소 일부에 대한 이름이나 위치를 다르게 표시할 수 있습니다. 이러한 요소는 사용하는 Visual Studio 버전 및 설정에 따라 결정됩니다. 자세한 내용은 Visual Studio 설정을 참조하십시오.

클래스를 정의하려면

  1. 파일 메뉴에서 새 프로젝트를 클릭하여 프로젝트를 만듭니다. 새 프로젝트 대화 상자가 나타납니다.

  2. Visual Basic 프로젝트 템플릿 목록에서 Windows 응용 프로그램을 선택하여 새 프로젝트를 표시합니다.

  3. 프로젝트 메뉴의 클래스 추가를 클릭하여 프로젝트에 새 클래스를 추가합니다. 새 항목 추가 대화 상자가 나타납니다.

  4. 클래스 템플릿을 선택합니다.

  5. 새 클래스의 이름을 UserNameInfo.vb로 지정한 다음 추가를 클릭하여 새 클래스에 대한 코드를 표시합니다.

    Public Class UserNameInfo
    End Class
    

    참고

    Visual Basic 코드 편집기에서 새 클래스 이름 다음에 Class 키워드를 입력하여 시작 폼에 클래스를 추가할 수 있습니다. 코드 편집기에서 작업하면 해당 End Class 문이 자동으로 제공됩니다.

  6. Class 문과 End Class 문 사이에 다음 코드를 추가하여 클래스에 대한 전용 필드를 정의합니다.

    Private userNameValue As String
    

    필드를 Private로 선언하면 해당 필드는 클래스 내에서만 사용될 수 있습니다. Public과 같이 보다 많은 액세스를 제공하는 액세스 한정자를 사용하면 클래스 외부에서 필드를 사용할 수 있도록 할 수 있습니다. 자세한 내용은 Visual Basic의 액세스 수준을 참조하십시오.

  7. 다음 코드를 추가하여 클래스의 속성을 정의합니다.

    Public Property UserName() As String
        Get
            ' Gets the property value.
            Return userNameValue
        End Get
        Set(ByVal Value As String)
            ' Sets the property value.
            userNameValue = Value
        End Set
    End Property
    
  8. 다음 코드를 추가하여 클래스의 메서드를 정의합니다.

    Public Sub Capitalize()
        ' Capitalize the value of the property.
        userNameValue = UCase(userNameValue)
    End Sub
    
  9. Sub New 프로시저를 추가하여 새 클래스에 대한 매개 변수가 있는 생성자를 정의합니다.

    Public Sub New(ByVal UserName As String)
        ' Set the property value.
        Me.UserName = UserName
    End Sub
    

    Sub New 생성자는 이 클래스를 기반으로 개체가 만들어질 때 자동으로 호출됩니다. 이 생성자는 사용자 이름을 사용하는 필드의 값을 설정합니다.

클래스를 테스트할 단추를 만들려면

  1. 솔루션 탐색기에서 시작 폼 이름을 마우스 오른쪽 단추로 클릭하고 디자이너 보기를 클릭하여 디자인 모드로 변경합니다. 기본적으로 Windows 응용 프로그램 프로젝트용 시작 폼의 이름은 Form1.vb입니다. 기본 폼이 나타납니다.

  2. 기본 폼에 단추를 추가하고 두 번 클릭하여 Button1_Click 이벤트 처리기의 코드를 표시합니다. 다음 코드를 추가하여 테스트 프로시저를 호출합니다.

    ' Create an instance of the class.
    Dim user As New UserNameInfo("Moore, Bobby")
    ' Capitalize the value of the property.
    user.Capitalize()
    ' Display the value of the property.
    MsgBox("The original UserName is: " & user.UserName)
    ' Change the value of the property.
    user.UserName = "Worden, Joe"
    ' Redisplay the value of the property.
    MsgBox("The new UserName is: " & user.UserName)
    

응용 프로그램을 실행하려면

  1. F5 키를 눌러 응용 프로그램을 실행하면 폼의 단추를 클릭하여 테스트 프로시저를 호출합니다. 프로시저에서 개체의 Capitalize 메서드를 호출했기 때문에 원본 UserName이 "MOORE, BOBBY"라는 메시지가 표시됩니다.

  2. 확인을 클릭하여 메시지 상자를 닫습니다. Button1 Click 프로시저는 UserName 속성 값을 변경하고 UserName의 새 값이 "Worden, Joe"라는 메시지를 표시합니다.

참고 항목

개념

개체 지향 프로그래밍(C# 및 Visual Basic)

기타 리소스

Visual Basic의 개체 및 클래스