Skip to content

ABAP Keyword Documentation →  ABAP - Reference →  Declarations →  Declaration Statements →  Classes and Interfaces →  ABAP Objects - Overview →  Classes →  Components of Classes 

Methods of Classes

Methods are internal procedures of a class that determine the behavior of an object. They can access all the attributes of all instances of their class and can therefore change the status of an object. Methods have a parameter interface, used by the system to pass values to them when they are called, and by which they can return values to the caller. The private attributes of a class can only be changed using methods of the same class.

Other versions: 7.31 | 7.40 | 7.54


A method meth is declared in the declaration section of a class using the statements METHODS and CLASS-METHODS and implemented in the implementation section of the class using the processing block

METHOD meth.

. As in all procedures, local data types and data objects can be declared in methods. Methods are called statically using the expression meth( ... ) or dynamically using the statement CALL METHOD (Dynamic Invoke).

Instance Methods

Instance methods are declared using the METHODS statement. They can access all the attributes of a class and can trigger all its events.

Static Methods

Static methods are declared using the CLASS-METHODS statement. This statement can access static attributes of a class and is can trigger static events only.


As well as the normal methods that are called explicitly, there are two special methods called constructor and class_constructor, which are called automatically when an object is created or when a class component is accessed for the first time.

Functional Methods

Functional methods are methods with precisely one RETURNING parameter and any number of other formal parameters. Functional methods cannot just be called as standalone statements, but also as functional method calls in operand positions for functions and expressions. Here they can be also be combined as method chainings.

Optional Methods

In interfaces, methods can be made optional using the addition DEFAULT of the statements METHODS and CLASS-METHODS. An optional interface method does not need to be implemented explicitly in a class when an interface is implemented. Instead, a default behavior is specified for calls of non-implemented methods in the definition. DEFAULT IGNORE calls an empty method and DEFAULT FAIL raises an exception.

Special Methods

AMDP Methods

AMDP methods are implemented using the addition BY DATABASE PROCEDURE in a database-specific language as ABAP Managed Database Procedures and executed in the database system.

Kernel Methods

For internal use, kernel methods are implemented in the kernel using the addition BY KERNEL MODULE.


Interface Parameters in Methods

The C Destructor

Kernel Methods