*&---------------------------------------------------------------------*
*& Report ZTEST_ABAP_13
*&
*&---------------------------------------------------------------------*
*&抽象类的定义和使用实例
*&
*&---------------------------------------------------------------------*
REPORT ztest_abap_13.
*定义抽象类
CLASS absbase DEFINITION ABSTRACT.
PUBLIC SECTION.
DATA: para TYPE string VALUE 'ABSTRACT PARA'.
METHODS: write_first ABSTRACT. "定义抽象方法
ENDCLASS.
*定义子类
CLASS subbase DEFINITION INHERITING FROM absbase.
PUBLIC SECTION.
METHODS: write_first REDEFINITION. "继承抽象方法
METHODS: write_second. "子类自定义方法
ENDCLASS.
*子类实现
CLASS subbase IMPLEMENTATION.
METHOD write_first.
WRITE: / para.
ENDMETHOD.
METHOD write_second.
WRITE: / '2ND METHOD!'.
ENDMETHOD.
ENDCLASS.
*调用
DATA: subbase_obj TYPE REF TO subbase.
START-OF-SELECTION.
CREATE OBJECT subbase_obj.
CALL METHOD: subbase_obj->write_first, "调用继承方法
subbase_obj->write_second. "调用自身方法