SAP-ABAP-实例第4章-面向对象程序设计
*----------------------------------------------------------------------* * CLASS callobj DEFINITION
*----------------------------------------------------------------------* *类的申明:
*----------------------------------------------------------------------*
CLASS callobj DEFINITION.
PUBLIC SECTION.
CLASS-DATA:
para(30) type C VALUE 'the static class parameter!'.
DATA count TYPE I.
METHODS:
showdata1,
showdata2.
PROTECTED SECTION.
PRIVATE SECTION.
METHODS:
showdata3.
ENDCLASS. \"callobj DEFINITION
*----------------------------------------------------------------------* * CLASS callobj IMPLEMENTATION
*----------------------------------------------------------------------* *类的实现:
*----------------------------------------------------------------------*
CLASS callobj IMPLEMENTATION.
METHOD showdata1.
WRITE:/,'showdata1:Hello sap'.
ENDMETHOD. \"showdata1
METHOD showdata2.
count = 1.
WRITE :/,'showdata2:',count.
CALL METHOD showdata3.
ENDMETHOD. \"showdata1
METHOD showdata3.
Write:/,'showdata3: the private method!'.
ENDMETHOD. \"showdata3
ENDCLASS. \"callobj IMPLEMENTATION
*----------------------------------------------------------------------* * CLASS callobj2 DEFINITION
*----------------------------------------------------------------------* *类2的声明:
*----------------------------------------------------------------------*
CLASS callobj2 DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
call_static_class.
ENDCLASS. \"callobj2 DEFINITION
*----------------------------------------------------------------------* * CLASS callobj2 IMPLEMENTATION
*----------------------------------------------------------------------* *类2的实现:
*----------------------------------------------------------------------*
CLASS callobj2 implementation.
METHOD call_static_class.
WRITE:/,callobj=>para.
ENDMETHOD. \"call_static_class
ENDCLASS. \"callobj2 IMPLEMENTATION
data obj type ref to callobj.
data:methname type string.
START-OF-SELECTION.
CREATE OBJECT obj.
methname = 'showdata2'.
CALL METHOD:obj->showdata1.
\"obj->(methname).
CALL METHOD:obj->showdata2.
CALL METHOD:callobj2=>call_static_class.
========================================================
*----------------------------------------------------------------------* * CLASS Demo DEFINITION
*----------------------------------------------------------------------* * 步骤一:声明变量:
*----------------------------------------------------------------------*
CLASS Demo DEFINITION.
PUBLIC SECTION.
Class-METHODs:Display.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS. \"Demo DEFINITION
*----------------------------------------------------------------------* * CLASS Demo IMPLEMENTATION
*----------------------------------------------------------------------* *步骤二:实现变量:
*----------------------------------------------------------------------*
CLASS Demo IMPLEMENTATION.
METHOD Display.
WRITE:'asdfasdf'.
ENDMETHOD. \"Demo
ENDCLASS. \"Demo IMPLEMENTATION
\"步骤三:开始
START-OF-SELECTION.
\"步骤四:声明对象:
Data obj TYPE REF TO Demo.
\"步骤五:实例化对象:
CREATE OBJECT obj.
\"步骤六:调用类方法:
CALL METHOD obj->Display.