How to interpret Inheritance in SAP ABAP object oriented programming

INHERITANCE EXAMPLE

CLASS zcl_big_boss DEFINITION PUBLIC CREATE PUBLIC.

   PUBLIC SECTION.

   METHODS set_name IMPORTING i_name TYPE string.

   METHODS get_name EXPORTING e_name TYPE string.

   METHODS set_age IMPORTING i_age TYPE int4.

   METHODS get_age EXPORTING e_age TYPE int4.

   METHODS set_profession IMPORTING i_profession TYPE string.

   METHODS get_profession EXPORTING e_profession TYPE string.

   PROTECTED SECTION.

   PRIVATE SECTION.

   DATA p_name TYPE string.

   DATA p_age TYPE int4.

   DATA p_profession TYPE string.

ENDCLASS.

CLASS zcl_big_boss IMPLEMENTATION.

METHOD set_name.

  p_name = i_name.

ENDMETHOD.

METHOD get_name.

  e_name = p_name.

ENDMETHOD.

METHOD set_age.

   P_age = i_age.

ENDMETHOD.

METHOD get_age.

   E_age = p_age.

ENDMETHOD.

METHOD set_profession.

   P_profession = i_profession.

ENDMETHOD.

METHOD get_profession.

   E_profession = p_profession.

ENDMETHOD.

ENDCLASS.

CLASS zcl_candidate DEFINITION INHERITING FROM zcl_big_boss

PUBLIC

FINAL

CREATE PUBLIC.

PUBLIC SECTION.

METHODS set_big_boss_charac TYPE string.

METHODS get_big_boss_charac TYPE string.

PROTECTED SECTION.

  DATA pro_big_boss_charac TYPE string.

PRIVATE SECTION.

ENDCLASS.

CLASS zcl_candidate IMPLEMENTATION.

METHOD set_big_boss_charac.

                Pro_big_boss_charac = i_big_boss_charac.

ENDMETHOD.

METHOD get_big_boss_charac.

                e_big_boss_charac = pro_big_boss_charac.

ENDMETHOD.

ENDCLASS.

REPORT TO ACCESS GETTER AND SETTER METHODS.

DATA lr_candidate TYPE REF TO zcl_candidate.

DATA l_name TYPE string.

DATA l_age TYPE int4.

DATA l_profession TYPE string.

DATA l_big_boss_charac TYPE string.

Lr_candidate = NEW zcl_candidate( ).

Lr_candidate->set_name(  EXPORTING i_name = ‚Bala‘ ).

Lr_candidate->set_age( EXPORTING i_age = 24 ).

Lr_candidate->set_profession( EXPORTING i_profession = ‚Model‘ ).

Lr_candidate->set_big_boss_charac( EXPORTING i_big_boss_charac = ‚Open Talk‘ ).

 Lr_candidate ->get_name( IMPORTING e_name = l_name ).

Lr_candidate ->get_age( IMPORTING e_age = l_age ).

Lr_candidate ->get_profession( IMPORTING e_profession = l_profession ).

Lr_candidate->get_big_boss_charac( IMPORTING e_big_boss_charac = l_big_boss_charac ).

WRITE: / ‚NAME OF THE CONTESTANT:‘ , l_name.

WRITE:/ ,AGE OF THE CONTESTANT:‘; l_age.

WRITE:/ ,PROFESSION OF THE CONTESTANT:‘, L_PROFESSION.

WRITE:/ ‚Big boss characteristics‘, l_big_boss_charac