You are on page 1of 3

SIMPLE CLASSES

The following document looks at the defining , implementing & using simple classes ***INCLUDE ZBC404_HF_LCL_AIRPLANE . ****************************************** * Definition part ****************************************** CLASS lcl_airplane DEFINITION. *-----------------------------* Public section *-----------------------------PUBLIC SECTION. TYPES: t_name(25) TYPE c. METHODS: constructor, set_attributes IMPORTING p_name display_attributes, display_n_o_airplanes. *-----------------------------* Private section *-----------------------------PRIVATE SECTION. * Private attributes DATA: name(25) TYPE c, planetype TYPE saplane-planetype. * Private static attribute CLASS-DATA n_o_airplanes TYPE i. ENDCLASS. ****************************************** * Implementation part ****************************************** CLASS lcl_airplane IMPLEMENTATION. METHOD constructor. * Counts number of instances TYPE t_name p_planetype TYPE saplane-planetype,

n_o_airplanes = n_o_airplanes + 1. ENDMETHOD. METHOD set_attributes. name = p_name. planetype = p_planetype. ENDMETHOD. METHOD display_attributes. WRITE:/ 'Name:', name, 'Planetype:', planetype. ENDMETHOD. METHOD display_n_o_airplanes. WRITE: / 'No. planes:', n_o_airplanes. ENDMETHOD. ENDCLASS. REPORT zbc404_hf_maintain_airplanes . INCLUDE zbc404_hf_lcl_airplane. * Create reference to class lcl_airplane DATA: airplane1 TYPE REF TO lcl_airplane, airplane2 TYPE REF TO lcl_airplane. START-OF-SELECTION. * Create instance CREATE OBJECT airplane1. CALL METHOD: airplane1->display_n_o_airplanes. CREATE OBJECT airplane2. * Setting attributes using a method with parameters CALL METHOD airplane1->set_attributes EXPORTING p_name p_planetype = 'MD80'. END-OF-SELECTION. = 'Kurt'

* Using methods CALL METHOD: airplane1->display_n_o_airplanes, airplane1->display_attributes.

OUTPUT The resulting report: Maintain airplanes No. planes: 1 No. planes: 2 Name: Kurt

Planetype: MD80

You might also like