Why does ABAP divide classes into implementation and definition?

Viewed 284

I know that ABAP Objects are kinda old but as far as my knowledge goes you still have to use at least two "sections" to create a complete class.

ABAP:

CLASS CL_MYCLASS DEFINITION.
    PUBLIC SECTION.
        ...
    PROTECTED SECTION.
        ...
    PRIVATE SECTION.
        ...
ENDCLASS.

CLASS CL_MYCLASS IMPLEMENTATION.
    ...
ENDCLASS.

Java:

public class MyClass {

    <visibility> <definition> {
        <implementation>
    }

}

Wouldn't it make development easier/faster by having a combination of both like most modern languages have?

What are the reasons for this separation?

2 Answers
Related