Topic: a lesson for each day(2005-1-17)

ERP俱乐部

第 1 页 总共 1 页 [共有 7 条记录]


Posted by mara on 2005-01-17 02:49 下午

REPORT demo_objects_references.

CLASS counter DEFINITION.
  PUBLIC SECTION.
    METHODS: set IMPORTING value(set_value) TYPE i,
             increment,
             get EXPORTING value(get_value) TYPE i.
  PRIVATE SECTION.
    DATA count TYPE i.
ENDCLASS.

CLASS counter IMPLEMENTATION.
  METHOD set.
    count = set_value.
  ENDMETHOD.
  METHOD increment.
    ADD 1 TO count.
  ENDMETHOD.
  METHOD get.
    get_value = count.
  ENDMETHOD.
ENDCLASS.

DATA: cnt_1 TYPE REF TO counter,
      cnt_2 TYPE REF TO counter,
      cnt_3 TYPE REF TO counter,
      cnt_tab TYPE TABLE OF REF TO counter.

DATA number TYPE i.

START-OF-SELECTION.

  CREATE OBJECT: cnt_1,
                 cnt_2.

  MOVE cnt_2 TO cnt_3.

  CLEAR cnt_2.

  cnt_3 = cnt_1.

  CLEAR cnt_3.

  APPEND cnt_1 TO cnt_tab.

  CREATE OBJECT: cnt_2,
                 cnt_3.

  APPEND: cnt_2 TO cnt_tab,
          cnt_3 TO cnt_tab.

  CALL METHOD cnt_1->set EXPORTING set_value = 1.

  CALL METHOD cnt_2->set EXPORTING set_value = 10.

  CALL METHOD cnt_3->set EXPORTING set_value = 100.

  DO 3 TIMES.
    CALL METHOD: cnt_1->increment,
                 cnt_2->increment,
                 cnt_3->increment.
  ENDDO.

  LOOP AT cnt_tab INTO cnt_1.
    CALL METHOD cnt_1->get IMPORTING get_value = number.
    WRITE / number.
  ENDLOOP.


这个程序是一个类的例子,我认为很有代表性,这也是今后ABAP的一个发展方向


Posted by yager on 2005-01-18 07:39 下午
看不懂ing

Posted by abright on 2005-01-19 08:29 上午
是呀,我用container配合其它的类,得到了许多不错的东西。就系统自带的类就有好多!

Posted by mara on 2005-01-19 10:13 上午
其实我们能把系统的类用会就很不错了,当然自己有需要也可以写一些

Posted by ABAP低能儿 on 2005-01-20 09:35 上午
希望楼主以后发LESSON后面有讲解。。。。。。。。。。。。。。。。。。看不懂ING。。。

Posted by mara on 2005-01-20 09:57 上午
可能我这个程序有点难,因为我们平时用class 很少,我想如果大家用java和c++写过程序的话就对上面的程序不会太陌生。

Posted by Adam Guo on 2006-02-07 05:11 下午
顶一把
class确实是abap的一个发展方向