Interface attributes can be initiated with values at the time of Interface declaration in any class definition.
REPORT zinterface_valueassign.
*----------------------------------------------------------------------*
* INTERFACE inf1
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
INTERFACE inf1.
DATA: v_txt1 TYPE char40,
v_txt2 TYPE char40.
METHODS mit.
ENDINTERFACE. "inf1
*----------------------------------------------------------------------*
* CLASS cls DEFINinf1ION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS cls DEFINITION.
PUBLIC SECTION.
* Value assignment to the inf1erface attribute
INTERFACES inf1 DATA VALUES
v_txt1 = 'SAP ABAP'
v_txt2 = 'Object Oriented'.
ENDCLASS. "cls DEFINITION
*----------------------------------------------------------------------*
* CLASS cls IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS cls IMPLEMENTATION.
METHOD inf1~mit.
WRITE: / inf1~v_txt1,
/ inf1~v_txt2.
ENDMETHOD. "inf1~minf1
ENDCLASS. "cls IMPLEMENTATION
* Start of selection
START-OF-SELECTION.
* Data Declaration
DATA obj TYPE REF TO cls.
* Object Creation
CREATE OBJECT obj.
CALL METHOD obj->inf1~mit.
Output
If we give values like class attributes then compile error will come as follows: