abap에서 클래스는 두가지 타입으로 구분할 수 있다.
Global Class - Class Builder(se24)를 사용하여 Class library 안에서 전역적(global)으로 선언한 클래스.
Local Class - 메인 프로그램 안에서 지역적(local)으로 선언한 클래스.
global class로 생성된 클래스는 모든 abap프로그램에서 접근할 수 있고, local로 선언된 클래스는 프로그램 내부에 포함되어 있어야 한다.
클래스는 정의와 구현 부분으로 구성되어 있다.
아래는 local class 선언 및 사용방법이다.
CLASS c_counter DEFINITION. "정의부분
PUBLIC SECTION.
METHODS: set_counter importing value (set_value) type i,
increment_counter,
get_counter exporting value ( get_value) type i.
PRIVATE SECTION.
DATA count type i.
ENDCLASS.
CLASS c_counter IMPLEMENTATION. "구현부분
METHOD SET_COUNTER.
count = set_value.
ENDMETHOD.
METHOD increment_counter.
add 1 to count..
ENDMETHOD.
METHOD get_counter.
get_value = count.
ENDMETHOD.
ENDCLASS.
3가지 타입의 섹션
PUBLIC SECTION - 모든 사용자에게 접근 가능한 영역으로, 클래스와 사용자 간의 인터페이스를 형성한다.
PROTECTED SECTION - 해당 클래스 및 상속이 일어난 서브클래스에서만 나타날 수 있는 영역으로,
서브클래스와 슈퍼클래스 간에 특별한 인터페이스를 형성한다.
PRIVATE SECTION - 같은 클래스 안에서만 나타나고 접근 가능한 영역으로, 상속이 일어난 서브클래스에서는
보이지 않는다. 따라서 완전히 클래스 안에 캡슐화되었다고 보면 된다.
'업무 > ABAP' 카테고리의 다른 글
ALV 데이터 변경 시점 (0) | 2016.03.24 |
---|---|
SAP BDC (0) | 2016.01.25 |
SAP ALV. ALV에서 DATA 변경시 PBO 타게하기 (0) | 2016.01.25 |
SAP ABAP. DBLINK와 RFC의 차이 (1) | 2016.01.25 |
SAP ABAP. SCREEN PAI의 on request 와 on input 의 차이 (0) | 2016.01.25 |