首页 > 代码库 > ABAP运行时类型服务 Runtime Type Services (RTTS)
ABAP运行时类型服务 Runtime Type Services (RTTS)
RTTS (RunTime Type Services)允许获得变量的定义,或者在程序运行期间创建它们。RTTS由2个组件组成:
- RTTI(RunTime Type Identification)用于获取已存在类型或已存在变量的定义。
- RTTC(RunTime Type Creation)用于使用定义创建新的变量;需要创建的变量必须通过ABAP语句CREATE DATA ... TYPE HANDLE创建。
RTTI和RTTC可以通过使用类CL_ABAP_*DESCR中的方法访问。每个类都有RTTI和RTTC方法。(下面的表格效果太差,建议直接看英文原文)
Class | RTTI methods | RTTC methods | Attirbutes | Comments |
CL_ABAP_TYPEDESCR | | | | | |
| describe_by_data | absolute_name | describe_by_name 可以获得DDIC对象的定义. |
|??CL_ABAP_DATADESCR | | | | | | | | | | |
|
| is_instantiatable |
|
| |??CL_ABAP_ELEMDESCR | | | | | | | | | | | | | | | | | | | | | | |
| get_n | edit_mask |
|
| |??CL_ABAP_REFDESCR | | | | | | | get_referenced_type | create |
| 对应"type ref to data"的变量,和"type ref to object"的对象 |
| |??CL_ABAP_COMPLEXDESCR |
|
|
| |
| |??CL_ABAP_STRUCTDESCR | | | | | | | get_components | create | struct_kind |
|
| |??CL_ABAP_TABLEDESCR | | | | | | get_table_line_type | create | key |
|
|??CL_ABAP_OBJECTDESCR | | | | | |
|
| interfaces |
|
|??CL_ABAP_CLASSDESCR | | | | | get_super_class_type |
| class_kind |
|
|??CL_ABAP_INTFDESCR | get_interface_type |
| intf_kind |
|
SAP Training : ABAP351
原文标题:Runtime Type Services (RTTS)
本文链接:http://www.cnblogs.com/hhelibeb/p/7043550.html
参考文章:动态编程
ABAP运行时类型服务 Runtime Type Services (RTTS)