您的位置:首页 > 其它

ABAP OO的基本概念

2009-05-04 16:23 513 查看
SAP起初使用的是宏编程,为了提高报表的开发效率而产生了ABAP语言,尽管他是一门独立的语言,不过也受到了cobol和pascal语言的影响,ABAP OO是对ABAP语言的扩展,他实现了像JAVA,C++这些面向对象语言的特性。
面向过程编程的特点是变量与功能分离,功能可以模块化。
在程序中调用function module时,function group和程序的变量内存位于同一个internal session的不同的内存区域。Function group实现了变量的封装,但其在一个程序中只能有一个实例,如果想实现多实例,就要加入特殊的逻辑进行管理。
ABAP OO的特性:封装了数据和方法 支持多态 支持继承(只支持单继承)
一个ABAP CLASS包括attributes,methods,events,constants,types和implemented interface。
你只能在interface定义和类声明的public section部分使用read only。
使用constructor创建类时如果exception发生,那么实例不会被创建,内存也不会被占用。
在下列三种情况下你需要使用structor::
l 需要分配外部资源
l 需要初始化用DATA…VALUE无法初始化的属性
l 需要修改静态变量
在一个程序中,Class-constructor在下列动作发生之前执行:
l 使用CREAT OBJECT创建一个类实例
l 访问一个静态属性
l 调用一个静态方法
l 注册一个静态event handler
l 一个静态的event被注册
在一个类里,attribute names, method names, event names, constant names, type names以及alia names位于同一个命名区域里而在方法中有本地的命名区域用于定义本地变量,与class命名区域同名的本地变量会覆盖class级别的变量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: