面向对象的 ABAP 里,全局类和局部类有什么区别,以及各自使用场合试读版

发布时间 2023-11-13 12:08:05作者: JerryWang_汪子熙

本教程之前的文章,第一次介绍了 ABAP 面向对象编程领域的类,实例,方法等概念。

20. 面向对象的 ABAP 编程初探 - 什么是类,实例,和 Public 方法

在 ABAP 很多帮助文档里,我们都能看到 SAP 在提到类的时候,总是将 Global Class(全局类)和 Local Class(局部类,有时也称本地类,内部类)相提并论。

本文就来探讨下这两种类的共性和区别。

详细的举例阐述,可以从这里获得。

总结

ABAP 全局类和局部类,是 ABAP 编程语言里面向对象编程思想两种具体的实现方式。无论是全局类还是本地类,其代码编写语法都相同,都支持方法和属性的封装,目的都是使代码更易于维护和理解。

无论是 ABAP 全局类还是本地类,都有助于将复杂的代码业务逻辑,分解为更小的模块,提高了代码的模块化性。

在实际项目开发中,选择 ABAP 全局类还是 ABAP 局部类,判断标准就在于采用面向对象编程思想开发出来的业务逻辑,到底期望其被广而用之,还是敝帚自珍。如果希望能尽可能多地被重用,选择全局类。如果期望控制编写出的逻辑仅仅被特定的上下文消费,则选择局部类。

ABAP 类的单元测试(Class Unit Test)是 ABAP 局部类一个典型的应用场合。本教程后续文章会介绍。