Abap 如何在另一个类中获取类的受保护属性
我需要在我自己的Abap 如何在另一个类中获取类的受保护属性,abap,sap-fiori,Abap,Sap Fiori,我需要在我自己的Z-class中获取classclass\u 1的受保护属性attr\u 1,并将其用作我的方法get\u CAMP\u DATA()的输入参数 有人能帮我解决问题吗 我想这样做: DATA(lv_camp_id) = Class_1=>attr_1`. CALL METHOD GET_CAMP_DATA EXPORTING iv_camp_id = lv_camp_id IMPORTING et_result = l
Z-class
中获取classclass\u 1
的受保护属性attr\u 1
,并将其用作我的方法get\u CAMP\u DATA()
的输入参数
有人能帮我解决问题吗
我想这样做:
DATA(lv_camp_id) = Class_1=>attr_1`.
CALL METHOD GET_CAMP_DATA
EXPORTING
iv_camp_id = lv_camp_id
IMPORTING
et_result = lt_result
三种选择:
1.在类_1中实现方法get_attr_1
,在此方法中返回attr_1
2.将属性1设置为公共
3.将Z-class
定义为class_1
class Class_1 definition
public
final
create public global friends Z-class.
public section.
protected section.
data: attr_1 type your_type.
private section.
endclass.
一个选项是定义属性PUBLIC(您可以使用只读添加,这样就不能从外部对其进行更改)。如果不可行,则必须为属性创建一个GET方法。根据定义(搜索web),“protected”表示它只能由类本身或其子类之一(定义为从类继承成员的类)使用。如果类所有者不希望其他开发人员访问它,那么他们将无法访问它。在ABAP中,您可以使用增强框架,但这是另一个问题…非常感谢,Sandra。这就是我所期望的。。。
class Class_1 definition
public
final
create public global friends Z-class.
public section.
protected section.
data: attr_1 type your_type.
private section.
endclass.