You are on page 1of 1

*&---------------------------------------------------------------------*

*& Report  ZMR_SUPER_SUBCLASSES
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZMR_SUPER_SUBCLASSES.

class lc_datadeclare DEFINITION.
  PUBLIC SECTION.
     data : lv_kunnr type kunnr value '1000'.
     methods : get_data.
  PROTECTED SECTION.
     data : lv_lifnr type lifnr value '2000'.
ENDCLASS.

CLASS lc_datadeclare IMPLEMENTATION.
  METHOD get_data.
    WRITE :/ LV_KUNNR, LV_LIFNR.
  ENDMETHOD.
ENDCLASS.

class lc_subclass DEFINITION INHERITING FROM lc_datadeclare.
  public SECTION.
     data : lv_name1 type name1_gp value 'Mr.Hari'.
     methods : get_data REDEFINITION.
 ENDCLASS.

 class lc_subclass IMPLEMENTATION.
   method get_data.
     write :/ lv_kunnr, lv_lifnr, lv_name1.
    ENDMETHOD.
 endclass.

data : lr_subclass type ref to lc_subclass.
DATA : LR_DATADECLARE TYPE REF TO lc_datadeclare.
 START-OF-SELECTION.
 create OBJECT lr_subclass.
 call method lr_subclass->get_data
 .
 CREATE OBJECT LR_DATADECLARE.
 CALL METHOD LR_DATADECLARE->GET_DATA.

You might also like