Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Abap 如何在另一个类中获取类的受保护属性_Abap_Sap Fiori - Fatal编程技术网

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
中获取class
class\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.