SAPABAP-オブジェクト
オブジェクトは、明確な特性と動作を持つ特殊な種類の変数です。オブジェクトの特性または属性は、オブジェクトの状態を説明するために使用され、動作またはメソッドは、オブジェクトによって実行されるアクションを表します。
オブジェクトは、クラスのパターンまたはインスタンスです。これは、人などの実世界のエンティティ、または変数や定数などのプログラミングエンティティを表します。たとえば、アカウントと学生は実際のエンティティの例です。しかし、コンピューターのハードウェアおよびソフトウェアコンポーネントは、プログラミングエンティティの例です。
オブジェクトには次の3つの主な特徴があります-
- 状態があります。
- 独自のアイデンティティを持っています。
- 動作が表示される場合と表示されない場合があります。
オブジェクトの状態は、属性とその値のセットとして説明できます。たとえば、銀行口座には、口座番号、名前、口座タイプ、残高、およびこれらすべての属性の値などの一連の属性があります。オブジェクトの動作とは、一定期間にその属性で発生する変更を指します。
各オブジェクトには、他のオブジェクトと区別するために使用できる一意のIDがあります。2つのオブジェクトは同じ動作を示し、同じ状態である場合とそうでない場合がありますが、同じIDを持つことはありません。2人の名前、年齢、性別は同じでも、同じではありません。同様に、オブジェクトのIDは、その存続期間を通じて変更されることはありません。
オブジェクトは、メッセージを送信することによって相互作用できます。オブジェクトには、データとデータを操作するためのコードが含まれています。オブジェクトは、クラスを使用してユーザー定義のデータ型として使用することもできます。オブジェクトは、型クラスの変数とも呼ばれます。クラスを定義した後、そのクラスに属するオブジェクトをいくつでも作成できます。各オブジェクトは、それが作成されたタイプクラスのデータに関連付けられています。
オブジェクトの作成
オブジェクトの作成には通常、次の手順が含まれます-
クラスを参照して参照変数を作成します。構文は-
DATA: <object_name> TYPE REF TO <class_name>.
参照変数からオブジェクトを作成します。構文は-
CREATE Object: <object_name>.
例
REPORT ZDEMO_OBJECT.
CLASS Class1 Definition.
Public Section.
DATA: text1(45) VALUE 'ABAP Objects.'.
METHODS: Display1.
ENDCLASS.
CLASS Class1 Implementation.
METHOD Display1.
Write:/ 'This is the Display method.'.
ENDMETHOD.
ENDCLASS.
START-OF-SELECTION.
DATA: Class1 TYPE REF TO Class1.
CREATE Object: Class1.
Write:/ Class1->text1.
CALL METHOD: Class1->Display1.
上記のコードは次の出力を生成します-
ABAP Objects.
This is the Display method.