주요 차이점 : 프로그래밍 언어에서 클래스는 필드 및 메서드와 같은 멤버가 포함 된 객체의 청사진입니다. 모듈은 구성원의 속성, 이벤트, 변수 및 프로 시저와 관련된 정의를 도입합니다. 모듈은 클래스처럼 인스턴스화 될 수 없습니다.
클래스는 객체와 관련된 모든 필요한 세부 사항을 설명 할 수 있기 때문에 객체의 청사진으로 간주됩니다. 이 클래스에서 객체가 만들어집니다. 클래스는 클래스, 속성 및 작업의 이름과 같은 세 가지 중요한 항목으로 구성됩니다.
공립 학생
{
Public StudentRegistration ();
{
새로운 RecordManager (). Initialize ();
}
}
이것은 Student라는 이름의 클래스의 예입니다.
모듈은 구성원의 속성, 이벤트, 변수 및 프로 시저와 관련된 정의를 도입합니다. 이것은 VB에서 모듈의 예입니다.
공용 모듈 Mymodule
Sub Main ()
Dim firstname As String = 입력란 ( "당신의 이름은 무엇입니까?")
MsgBox ( "귀하의 이름은"& firstname 임)
End Sub
엔드 모듈
모듈은 표준 모듈이라고도합니다. 모듈은 네임 스페이스 수준에서만 사용할 수 있습니다.
객체를 가진 클래스로서 모듈을 인스턴스화 할 수 없습니다. 이는 표준 모듈의 데이터 사본이 단 하나만 존재하고 표준 변수의 공용 변수에 영향을주는 프로그램의 일부에서 변경이 발생하는 경우에 그 경우에는 다른 부분에 동일한 효과가 나타납니다 이 영향을받은 변수를 사용합니다. 반면에, 각 객체에 대한 데이터는 개별적으로 유지됩니다. 혜택 세트에는 일반적으로 모듈과 클래스가 결합되어 있습니다.
모듈과 클래스의 비교 :
기준 치수 | 수업 | |
계승 | 지원되지 않음 | 지원되는 |
인터페이스 구현 | 아니 | 예 |
회원 | 공유 (Visual Basic에서 암시 적으로) | 클래스 구성원의 유형을 공유 또는 인스턴스 구성원으로 제어 |
객체 지향 | 아니요, 모듈을 인스턴스화 할 수 없습니다. | 예 |
데이터 사본 | 단 하나의 사본 | 오브젝트 데이터는 인스턴스화 된 각 오브젝트마다 별도로 존재합니다. |
일반적인 응용 | 일반적으로 컴파일, 내부 구조 및 모듈 경계 외부의 프라이버시를 분리하기 위해 외부 수준에서 사용됩니다. | 일반적으로 모듈의 구성 요소로 |
선호하는 | 병합 연산과 같은 이진 연산과 함께 사용되는 추상 데이터 유형의 경우 | 상속이 필요한 경우 |
회원 | 메서드, 상수 및 클래스 | 메소드, 상수 및 변수 |
포함 | 클래스 또는 모듈에서 include 명령을 사용하여 포함시킬 수 있습니다. | 포함 할 수 없습니다. |
수퍼 클래스 | 목적 | 기준 치수 |