SAP ABAP 对象

对象是一种特殊的变量,具有不同的特征和行为。对象的特征或属性用于描述对象的状态,行为或方法表示对象执行的动作。

对象是类的模式或实例。它表示一个真实的实体,如人或编程实体,如变量和常数。例如,帐户和学生是真实世界实体的例子。但是计算机的硬件和软件组件是编程实体的例子。

对象具有以下 3 个主要特征:

  • 具有一个状态。
  • 具有独特的身份。
  • 可能会或可能不会显示行为。

对象的状态可以描述为一组属性及其值。例如,银行帐户具有一组属性,例如帐号、名称、帐户类型、余额以及所有这些属性的值。对象的行为是指其属性在一段时间内发生的变化。

每个对象都有一个唯一的标识,可用于将其与其他对象区分开来。两个对象可能表现出相同的行为,它们可能具有或不具有相同的状态,但它们从来没有相同的身份。两个人可能有相同的名字、年龄和性别,但他们并不完全相同。类似地,对象的标识在其整个生命周期内永远不会改变。

对象可以通过发送消息相互交互。对象包含用于操作数据的数据和代码。在类的帮助下,对象也可以用作用户定义的数据类型。对象也称为类型类的变量。定义类后,可以创建属于该类的任意数量的对象。每个对象都与创建它的类型类的数据相关联。


创建一个对象

ABAP 对象创建通常包括以下步骤:

  • 创建一个引用类的引用变量。其语法为:
  1. DATA: <object_name> TYPE REF TO <class_name>.
  • 从引用变量创建对象。其语法为:
    1. CREATE Object: <object_name>.
实例
  1. REPORT ZDEMO_OBJECT.
  2. CLASS Class1 Definition.
  3. Public Section.
  4. DATA: text1(45) VALUE 'ABAP Objects.'.
  5. METHODS: Display1.
  6. ENDCLASS.
  7. CLASS Class1 Implementation.
  8. METHOD Display1.
  9. Write:/ 'This is the Display method.'.
  10. ENDMETHOD.
  11. ENDCLASS.
  12. START-OF-SELECTION.
  13. DATA: Class1 TYPE REF TO Class1.
  14. CREATE Object: Class1.
  15. Write:/ Class1->text1.
  16. CALL METHOD: Class1->Display1.

结果如下:

  1. ABAP Objects.
  2. This is the Display method.