OO ABAP 编程基础一(类的基本属性及定义)

1 Grammer

1.1 General Introduction.

Attributes and method is basic for abap.
Class and object is used in th abap.
The class is made up by data and function.
There are local and global class. Global class is the SE24, local is only in the programe.

1.2 Definition Keyword in the class .

Class … definiton /DATA … METHODS endclass.
Class …IMLEMEMTATION method… endmethod. endclass.

The difference from instance and static.

            Instance comp                      Static comp

Attri data class-data / constants
Meth methods class-methods.

The difference from Public and protected and private

                public                  protected             private

Out yes No no
Self yes yes yes
Inherit yes yes no

2 Demo.

REPORT ZJGLTEST01 .

REPORT ZJGLTEST01 .


*----------------------------------------------------------------------*
*       CLASS LCL_COMPT DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS LCL_COMPT DEFINITION.
  PUBLIC SECTION.
    DATA GV_CHAR TYPE C LENGTH 20 VALUE 'CHAR 变量'.
    METHODS WRITE_CHAR.

    CLASS-METHODS  WRITE_STATIC.


  PROTECTED SECTION.

  class-data gv_super type c LENGTH 20 VALUE 'SUPER CLASS'.

  PRIVATE SECTION.
 CLASS-DATA GV_STATIC TYPE C LENGTH 20 VALUE 'Static attibute'.



ENDCLASS.                    "LCL_COMPT DEFINITION

*----------------------------------------------------------------------*
*       CLASS LCL_COMPT IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS LCL_COMPT  IMPLEMENTATION.
  METHOD WRITE_STATIC.
    WRITE: GV_STATIC.
  ENDMETHOD.                    "write_static

  METHOD WRITE_CHAR.
    WRITE :/ GV_CHAR .
  ENDMETHOD.                    "WRITE_CHAR
ENDCLASS.                    "LCL_COMPT IMPLEMENTATION


class lcl_sub DEFINITION INHERITING FROM lcl_compt.
  PUBLIC SECTION.
  methods write_super.

  ENDCLASS.




class lcl_sub IMPLEMENTATION.
  METHOD write_super.
   write:'public section',gv_char.
   write: 'protect section',gv_super.
*   write: 'private section' ,gv_static.
   ENDMETHOD.



ENDCLASS.





DATA:  LCT_OBJECT TYPE REF TO LCL_COMPT.
DATA:  LCL_OBJECT_2 TYPE REF TO LCL_COMPT.

START-OF-SELECTION.

  CREATE OBJECT LCT_OBJECT.
  WRITE: LCT_OBJECT->GV_CHAR.
  CALL METHOD LCT_OBJECT->WRITE_CHAR.

  CREATE OBJECT LCL_OBJECT_2.
  LCL_OBJECT_2->GV_CHAR = '更换CHAR的值'.

  CALL METHOD LCL_OBJECT_2->WRITE_CHAR.


  SKIP.
*  WRITE: LCL_COMPT=>GV_STATIC.
  SKIP.
  CALL METHOD LCL_COMPT=>WRITE_STATIC.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值