Code: Alles auswählen.
Data myObject type ref to MyClass.
create object myObject
exporting
fp1 = ap1.
*...usw usf
Code: Alles auswählen.
CLASS lcl_abstract DEFINITION ABSTRACT.
PUBLIC SECTION.
METHODS:
constructor IMPORTING iv_num TYPE int8.
PRIVATE SECTION.
DATA:
number TYPE int8.
ENDCLASS.
CLASS lcl_abstract IMPLEMENTATION.
METHOD constructor.
number = iv_num.
ENDMETHOD.
ENDCLASS.
CLASS lcl_konkret DEFINITION INHERITING FROM lcl_abstract.
PUBLIC SECTION.
METHODS:
constructor IMPORTING iv_num TYPE int8.
ENDCLASS.
CLASS lcl_konkret IMPLEMENTATION.
METHOD constructor.
super->constructor( iv_num ).
ENDMETHOD.
ENDCLASS.
START-OF-SELECTION.
DATA lr_number TYPE REF TO lcl_konkret.
CREATE OBJECT lr_number
EXPORTING
iv_num = 42.
,sapnup hat geschrieben: Zudem besitzt MyClass in SE24 sehr wohl einen Konstruktor - und zwar den in MyAbstractClass definierten.
Ne, leider nicht, aus verschiedenen Gründen.Könntest du bitte die Klassendefinitionen mal posten? Dann können wir besser beurteilen, was hier schief läuft.
Genau das heiß es. Aber ich habe in meiner Problemklasse auch probiert einen selbst definierten und implementierten Konstruktor anzulegen. Das Problem bestand weiterhin.heißt das:
sapnup hat geschrieben:
Zudem besitzt MyClass in SE24 sehr wohl einen Konstruktor - und zwar den in MyAbstractClass definierten.
,
dass du gar keine definition ( und dementsprechend keine implementierung ^^ ) des Konstruktors für MyClass angelegt hast? sondern diese dann implizit von MyAbstractClass übernimmst?
Code: Alles auswählen.
*Abstrakte Klasse:
class Z_ABSTRACT_CLASS definition
public
create public .
public section.
methods CONSTRUCTOR
importing
!PAR_EINS type STRING .
protected section.
private section.
ENDCLASS.
CLASS Z_ABSTRACT_CLASS IMPLEMENTATION.
* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Instance Public Method Z_ABSTRACT_CLASS->CONSTRUCTOR
* +-------------------------------------------------------------------------------------------------+
* | [--->] PAR_EINS TYPE STRING
* +--------------------------------------------------------------------------------------</SIGNATURE>
method CONSTRUCTOR.
BREAK-POINT.
endmethod.
ENDCLASS.
Code: Alles auswählen.
*Konkrete Klasse:
class Z_CONCRETE_CLASS definition
public
inheriting from Z_ABSTRACT_CLASS
final
create public .
public section.
protected section.
private section.
ENDCLASS.
CLASS Z_CONCRETE_CLASS IMPLEMENTATION.
ENDCLASS.
Code: Alles auswählen.
*Aufrufender Code:
data: myObject TYPE REF TO z_concrete_class.
CREATE OBJECT myobject
EXPORTING
par_eins = 'DerWinterNaht'.