- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ABAP_OO思想
ABAP 面向对象编程 一. 介绍 二. 主要概念 三. 使用Control 四. ALV Control例子 一. 介绍 传统的ABAP面向过程编程 面向对象编程 ABAP Objects 是ABAP的扩展,集合了Java,C++,Smalltalk等语言的特点。和原来的ABAP无缝集成。 二. 主要概念 Class 在SAP中,可以在SE24或ABAP编辑器中定义Class。二者的区别类似SE11中定义的结构与程序中定义的结构。 在SE24中,可以看到类的各个部件,条理清楚。代码中的关键字,如public,class-method等在SE24中都可以体现出来。 在ABAP编辑器中定义Class Class:分两部分定义。Class中不能再嵌套定义Class。 定义Class的一个例子 Objects Object:就是class的实例(instance) 使用object前,先要用下面的语句来定义该object属于哪个类 data object name type ref to class name 定义完该对象后,就可以使用create object object name来创建对象了。这时系统会分配一块内存区域给对象。 create object时,在内存中分配一个空间给该Object。 如果内存中某个object区域不被指向,系统将释放这部分内存。下图中对两个object使用等号之后,它们指向同一个内存地址,同时释放一个object所占用的内存。 可以使用TYPE TABLE OF REF TO class关键字定义一个内表,来存放该类的多个对象。 Attribute 可以是各种类型,包括: Data types: scalar (例如 data element), structured, in tables, ABAP elementary types (C, I, ...) Object references Interface references 按定义位置,分为Public 和Private. Public Attribute:能从class外直接访问和修改。一般来说,尽量少定义Public Attribute。 Private Attribute:只能从类中访问和修改。 按定义的关键字,分为Instance 和Static. Instance Attribute:同一个类中多个实例的Instance Attribute各自分开,具有不同的值。使用DATA关键字定义。 用法:实例名-属性 Static Attribute:同一个类中多个实例的Static Attribute的值一样。可以通过各个实例或直接通过类来访问和修改。使用CLASS-DATA定义。在debug时可以看到class-data不占用object的内存。 用法:实例名-属性 或 类名=属性 Method 按定义位置,分为Public 和Private.类似Attribute。 Public Method: 能从类外调用。 Private Method:只能从该类中调用。 按定义的关键字,分为Instance和Static. Instance Method:能使用static和instance的内容。使用Method定义。 用法:实例名-方法名 Static Method:只能使用static的内容。可以不通过实例,直接调用。使用Class-Method定义。 用法:实例名-方法名 或 类名=方法名 Method的参数 Method的参数可以是Class/Object 可以有importing, exporting, changing, returning等 Constructor方法(初始化) 每个类都自动隐性带有名为constructor (Instance)和class_constructor(Static)方法。 要使用这两个method,必需首先定义它们。constructor可以有参数和例外,而class_constructor没有参数。 每次使用create object时自动执行constructor方法. Class-constructor在一个程序中只执行一次。在以下事件前自动执行。 CREATE OBJECT 调用该类的属性 使用Call Method Registering a static event handler Registering an evetm handler method for a static event 如果constructor带有参数,在create object时就能够通过传入的参数初始化object。 例如 CR
您可能关注的文档
最近下载
- 2025年运动康复师 膝关节骨关节炎(KOA)运动处方习题库.doc VIP
- 铝包钢芯耐热铝合金绞线.docx VIP
- 2025年康复治疗师《糖尿病康复》运动处方习题库.doc VIP
- 东方证券2021ESG报告.PDF VIP
- 2025年康复治疗师《康复体育与运动处方》习题库.doc VIP
- 山东省日照市2025-2026学年高三上学期开学校际联考语文试卷及答案.pdf VIP
- 合肥工业大学介绍PPT模板.pptx VIP
- 2025年历届广西单招试题及答案.docx
- 2025年康复治疗师《人工关节置换术后康复》习题库.doc VIP
- 2025年康复治疗师《骨折术后康复分期训练》习题库.doc VIP
文档评论(0)