1번.
프로그램 개발시 대부분은 cl_gui_alv_grid 이 그리드 클래스를 써서하잖아요
그런데 이걸
DATA: g_grid TYPE REF TO lcl_alv_grid,
밑에처럼 상속받아 제정의 해서 쓰는이유가 뭐죠?
cl_gui_alv_grid 여기데 메소드나 인스턴스들이 다 있을텐데
왜 call해서 쓰지 않고 다시 정의 해서 쓰는지 궁금합니다...
CLASS lcl_alv_grid DEFINITION DEFERRED.
CLASS lcl_event_handler DEFINITION DEFERRED.
CLASS lcl_alv_grid DEFINITION INHERITING FROM cl_gui_alv_grid.
PUBLIC SECTION.
METHODS: set_optimize_all_cols,
set_cursor IMPORTING row TYPE i
col TYPE i,
set_fixed_column,
set_row_resize,
set_error_cells_p EXPORTING cell_table TYPE lvc_t_err.
ENDCLASS. "LCL_ALV_GRID DEFINITION
2.번
CALL METHOD g_grid->register_edit_event
EXPORTING
i_event_id = cl_gui_alv_grid=>mc_evt_enter.
여기에서 ( -> ) 이거는 g_grid란 인스턴스의 register_edit_event메소드를 호출하는거고
( => )이거는 cl_gui_alv_grid라는 클래스의 mc_evt_enter이란 속성을 호출하는건가요?
( -> ) 와 ( => ) 의 의미를 알고싶습니다... 역시 클래스는 좀 생소하네요^^
1. method 가 protected 인 경우 상속 받아 재정의 해서 사용합니다.
2. -> instance method 호출
=> static method 호출