“您不能在CLASS DEFINITION ...和ENDCLASS之间使用当前语句”错误

时间:2018-12-27 06:44:00

标签: sap abap

我遇到错误,您无法在CLASS DEFINITION ....和ENDCLASS之间使用当前语句。以下是ABAP类的示例示例。

CLASS c1 DEFINITION. 
  PUBLIC SECTION.     
  STATICS static TYPE i VALUE 10. 
  METHODS add_one.

ENDCLASS. 

CLASS c1 IMPLEMENTATION. 

  METHOD add_one.
      static = static + 1. 
  ENDMETHOD.  

ENDCLASS. 

致谢

乌马尔·阿卜杜拉

2 个答案:

答案 0 :(得分:2)

STATICS应该在程序中声明为 ,并且只能在本地访问。

如果您希望能够访问方法外部的值,则应将变量声明为普通的类/静态属性:

CLASS c1 DEFINITION. 
  PUBLIC SECTION.     
  CLASS-DATA static TYPE i VALUE 10. 
  METHODS add_one.
ENDCLASS. 

CLASS c1 IMPLEMENTATION. 
  METHOD add_one.
      static = static + 1. 
  ENDMETHOD.  
ENDCLASS. 

答案 1 :(得分:1)

仅允许DATACLASS-DATA在类和接口中声明属性。

在类中,STATICS仅在静态方法的实现部分(用CLASS-METHODS声明)中被允许。