功能组与类

Dav*_*vid 0 sap abap

在ABAP中,我想知道功能组具有哪些OO属性。

函数组具有封装,因为我可以在函数组中放入全局变量。函数组中不能实现多态和继承。它是否正确?

那么功能组的不同实例呢?这是完全面向对象的功能,是否可以通过功能组来实现?

Flo*_*ian 8

Clean ABAP中所述

  • 没有实例化。您不能创建同一功能组的多个实例。
  • 没有继承。您不能继承或允许继承功能组。
  • 没有接口。您不能为同一功能组提供两种实现。
  • 无替代。您不能将对一个函数的调用与对另一个具有不同名称但签名相同的函数的调用交换。
  • 没有超载。您不能提供两个具有相同名称但参数不同的函数。(顺便说一下,这在ABAP OO中也是不可能的。)
  • 变量封装。功能组可以将内部状态隐藏在私有变量中。
  • 方法封装。功能组可以隐藏内部方法(“表单例程”)。

就像Jagger和Sandra Rossi所建议的那样,将功能组视为global abstract final class具有static public/private成员的。