局部类 - 预览

局部类 — 预览 (★★★)

#abap #abap-modularization

概览表

部分 关键字 用途
定义部分 CLASS … DEFINITION 声明组件(方法、属性)
实现部分 CLASS … IMPLEMENTATION 实现方法逻辑

局部类的结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
" ---- 定义部分 ----
CLASS lcl_example DEFINITION.
PUBLIC SECTION.
METHODS: get_result
IMPORTING iv_input TYPE i
EXPORTING ev_output TYPE i.

PRIVATE SECTION.
DATA: mv_value TYPE i.
ENDCLASS.

" ---- 实现部分 ----
CLASS lcl_example IMPLEMENTATION.
METHOD get_result.
mv_value = iv_input * 2.
ev_output = mv_value.
ENDMETHOD.
ENDCLASS.

可见性区域

区域 访问范围
PUBLIC SECTION 类的所有使用者
PROTECTED SECTION 类 + 子类(继承)
PRIVATE SECTION 仅类内部

使用局部类

1
2
3
4
5
6
DATA: go_obj TYPE REF TO lcl_example.

CREATE OBJECT go_obj.
CALL METHOD go_obj->get_result
EXPORTING iv_input = 5
IMPORTING ev_output = gv_result.
💡这只是一个预览
完整的 ABAP Objects 面向对象编程在 BC401 课程中讲解。本预览仅涵盖将局部类作为模块化技术所需的基础知识。

考试/测试模式

场景/关键词 答案
“定义与实现的区别?” DEFINITION 声明接口;IMPLEMENTATION 包含代码
“公有与私有区域?” 公有 = 外部可访问;私有 = 仅内部
“局部类的作用范围?” 仅在定义它的程序中可用

相关笔记