¿Cómo se crean los métodos de instancia y estáticos?
Los métodos definen las funcionalidades asociadas a los objetos que determinan el comportamiento de los objetos.
Se utilizan para acceder a los atributos de una clase, así como para modificarlos.
Los métodos dependientes de la instancia se declaran usando la sentencia METHODS y puedes acceder a todos los atributos de una clase y desencadenar algún evento de la misma.
Los métodos estáticos son independientes de la instancia y se declaran usando la sentencia CLASS-METHODS. Solo pueden acceder a los atributos estáticos y desencadenar eventos estáticos.
Cuando se declara un método se puede definir su interface de parámetros usando las adiciones:
- IMPORTING
- EXPORTING
- CHANGING
- RETURNING
Estas adiciones definen los parámetros de entrada, de salida, de entrada/salida y el código que devuelve el método. También definen si los parámetros se pasan por referencia o por valor (VALUE), su tipo (TYPE), o si es opcional o por defecto (OPTIONAL, DEFAULT). Al contrario que en los módulos de funciones, el modo por defecto de pasar parámetros a un método es por referencia. Para pasar un parámetro por valor es necesario especificar explícitamente la adición VALUE.