技术开发 频道

ABAP OO练习

    第五节:测试程序的实现

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

    
*& Report ZBOBO_OO_SAPLINK_004

    
*&

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

    
*&

    
*&

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

    REPORT ZBOBO_OO_SAPLINK_004.

    INCLUDE ZBOBO_OO_EMPLOYEE_CLASS.

    INCLUDE ZBOBO_OO_BOSS_CLASS.

    INCLUDE ZBOBO_OO_COMWORKER_CLASS.

    INCLUDE ZBOBO_OO_PIWORKER_CLASS.

    
*定义引用变量

    DATA:

    EM_REF TYPE REF TO EMPLOYEE,

    BO_REF TYPE REF TO BOSS,

    CO_REF TYPE REF TO COMMISSIONWORKER,

    PI_REF TYPE REF TO PIWORKER.

    DATA:

    EARNS TYPE F.

    START
-OF-SELECTION.

    
*创建boss对象

    CREATE OBJECT BO_REF

    EXPORTING BOSS_A
= 'Jhon'

    BOSS_B
= 'Smith'

    S
= '800.00'.

    
*narrowing cast

    EM_REF
= BO_REF.

    
*输出到屏幕

    CALL METHOD EM_REF
->PRINT.

    EARNS
= EM_REF->EARNINGS( ).

    WRITE:
/ 'Earned: $',EARNS DECIMALS 2 EXPONENT 0.

    
*下面的代码基本上和上面的相同

    CREATE OBJECT CO_REF

    EXPORTING A
= 'Sue'

    B
= 'Jones'

    C
= '800.00'

    D
= '3.0'

    E
= 150.

    EM_REF
= CO_REF.

    CALL METHOD EM_REF
->PRINT.

    EARNS
= EM_REF->EARNINGS( ).

    WRITE:
/ 'Earned: $',EARNS DECIMALS 2 EXPONENT 0.

    CREATE OBJECT PI_REF

    EXPORTING A
= 'BOB'

    B
= 'LEWIS'

    W
= '2.5'

    Q
= 200.

    EM_REF
= PI_REF.

    CALL METHOD EM_REF
->PRINT.

    EARNS
= EM_REF->EARNINGS( ).

    WRITE:
/ 'Earned: $',EARNS DECIMALS 2 EXPONENT 0.
0
相关文章