Posted: Sat Sep 15, 2007 8:00 pm Post subject: Private components of a class
If a method uses private components of the class, and this method is not redefined and being called from a subclass, it will always use the private components of the superclass, even if the subclass has its own private components of the same name.
Code:
REPORT ZVV0002.
*----------------------------------------------------------------------*
class c_base definition.
public section.
methods: constructor importing value(p_name) type string,
m_show1,
m_show2.
private section.
data a_name type string.
endclass.
*----------------------------------------------------------------------*
class c_derived definition inheriting from c_base.
public section.
methods: constructor importing value(p_name1) type string
value(p_name2) type string,
m_show1 redefinition.
private section.
data a_name type string.
endclass.
*----------------------------------------------------------------------*
class c_base implementation.
method constructor.
a_name = p_name.
endmethod.
method m_show1.
write: / 'Show1 :', a_name.
endmethod.
method m_show2.
write: / 'Show2 :', a_name.
endmethod.
endclass.
*----------------------------------------------------------------------*
class c_derived implementation.
method constructor.
call method: super->constructor exporting p_name = p_name1.
a_name = p_name2.
endmethod.
method m_show1.
write: / 'Show1_r:', a_name.
endmethod.
endclass.
*----------------------------------------------------------------------*
data o type ref to c_derived.
*----------------------------------------------------------------------*
END-OF-SELECTION.
*----------------------------------------------------------------------*
create object o exporting p_name1 = 'Base...' p_name2 = 'Derived...'.
call method: o->m_show1,
o->m_show2.
*----------------------------------------------------------------------*
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.