개체 및 클래스
업데이트: 2007년 11월
개체는 하나의 단위로 취급할 수 있는 코드 및 데이터의 조합입니다. 개체는 컨트롤이나 폼과 같이 응용 프로그램의 부분이 될 수 있습니다. 또한 응용 프로그램 전체가 하나의 개체로 될 수 있습니다.
코드 다시 사용
개체를 사용하면 변수 및 프로시저를 선언한 다음 필요할 때마다 다시 사용할 수 있습니다. 예를 들어, 맞춤법 검사기를 응용 프로그램에 추가하려는 경우 맞춤법 검사 기능을 제공하기 위한 모든 변수 및 지원 함수를 정의할 수 있습니다. 맞춤법 검사기를 하나의 클래스로 만들 경우에는 컴파일링된 어셈블리에 참조를 추가하여 다른 응용 프로그램에서도 해당 맞춤법 검사기를 다시 사용할 수 있습니다. 뿐만 아니라 다른 사람이 이미 개발한 맞춤법 검사기 클래스를 사용하여 작업 시간을 줄일 수도 있습니다.
클래스
Visual Basic의 각 개체는 클래스에서 정의합니다. 클래스는 개체의 변수, 속성, 프로시저 및 이벤트를 설명합니다. 개체는 클래스의 인스턴스입니다. 따라서 일단 클래스를 정의한 후에는 필요한 만큼 개체를 만들 수 있습니다.
개체와 해당 클래스 간 관계를 이해하려면 쿠키 커터와 쿠키를 생각합니다. 쿠키 커터는 클래스에 해당합니다. 쿠키 커터는 크기 및 모양과 같은 각 쿠키의 특징을 정의합니다. 클래스는 개체를 만드는 데 사용됩니다. 또한 개체는 쿠키에 해당합니다.
Visual Basic의 다음 두 예는 클래스와 개체의 관계를 보여 줍니다.
Visual Basic의 도구 상자에 있는 컨트롤은 클래스를 나타냅니다. 도구 상자에서 폼으로 컨트롤을 끌어 놓으면 개체, 즉 클래스의 인스턴스가 만들어집니다.
디자인 타임에 작업하는 폼은 클래스에 해당합니다. 런타임에 Visual Basic에서는 폼 클래스의 인스턴스, 즉 개체를 만듭니다.
여러 인스턴스
클래스에서 새로 만들어진 개체는 대개 서로 동일합니다. 그러나 개체가 개별적인 개체로 존재하는 동안에는 해당 변수 및 속성를 다른 인스턴스와 독립적으로 변경할 수 있습니다. 예를 들어, 폼에 세 개의 확인란을 추가하면 각 확인란 개체는 CheckBox 클래스의 인스턴스가 됩니다. 각 CheckBox 개체는 클래스에서 정의하는 특징 및 기능(속성, 변수, 프로시저 및 이벤트)의 공통 집합을 공유합니다. 그러나 각 개체는 고유한 이름을 가지며 개별적으로 활성화되고 비활성화될 수 있습니다. 또한 폼에서 서로 다른 위치에 있을 수도 있습니다.