ABAP面向对象开发.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ABAP面向对象开发概要1

在程序中, 对象的识别和寻址是通过对象引用来实现的, 对象引用变量可以访问对象的属性和方法. ABAP 中的类也有程序内部的局域类和全局类之分, 其作用范围不同. ABAP中的全局类是通过ABAP工作台中的类创建工具 Class Builder 开发的, 保存在系统类库程序 Class Pool 中, 可供所有程序作用. 一. 程序中类的定义. 1. 类声明及实现 * Class Declarations CLASS application DEFINITION. PUBLIC SECTION. METHODS: show_text. PRIVATE SECTION. DATA text(100) TYPE c VALUE This is my first ABAP Object.. ENDCLASS. CLASS application IMPLEMENTATION. METHOD show_text. WRITE text. ENDMETHOD. ENDCLASS. 2. 成员可见性. 公有: 可被所有对象使用. PUBLIC SECTION. 保护: 只能被本类及其派生类中的方法使用. PROTECTED SECTION. 私有: 只能被类本身的方法所使用. PRIVATE SECTION. 公有部分常常用来定义类的方法, 而类属性则一般定义为类的私有或保护数据, 只能通过自身或其派生类的方法来操作. 3. 成员类型. 可定义三种不同类型的成员, 分别是属性, 方法和事件. 属性是在类内部的数据对象, 对于实例属性, 用 DATA 定义, 语法与数据对象声明相同; 对于静态属性(类属性), 使用 CLASS-DATA 语句定义, 在类的声明部分定义. * Class Declarations CLASS application DEFINITION. PUBLIC SECTION. CLASS-DATA class_name(10) type c value Vehicle. 静态属性 PRIVATE SECTION. DATA speed TYPE i. ENDCLASS. 对于公有组件还可以在属性定义语句中增加 READ-ONLY 关键字, 则该属性不能被类外部读取但可被类的内部方法所修改. 除 DATA 外, 也可以使用 CONSTANT 语句定义类常量, 必须在类定义时指定其值. 使用 TYPES 语句在类中定义的数据类型, 相当于静态属性, 其定义方法与普通 ABAP 程序类似. 类方法需要在类的声明和实现两部分进行定义, 在类的声明部分说明方法的参数接口, 在实现部分则通过 ABAP 代码完成具体的功能. 方法的声明关键字为 METHODS 和 CLASS-METHODS. METHODS meth IMPORTING ... i1 TYPE ... EXPORTING ... e1 TYPE ... CHANGING ... c1 TYPE ... EXCEPTIONS ... x1 TYPE ... 定义了方法及方法的参数接口, 和 FORM 相似, 但没有 TABLES 参数. CLASS vehicle DEFINITION. PUBLIC SECTION. CLASS-DATA class_name(10) TYPE c VALUE Vehicle. METHODS: accelerate, show_speed. PRIVATE SECTION. DATA speed TYPE i. ENDCLASS. CLASS vehicle IMPLEMENTATION. METHOD accelerate. speed = speed + 1. ENDMETHOD. METHOD show_speed. WRITE: / Speed: , speed. ENDMETHOD. ENDCLASS. 二. 定义系统全局类. 通过 Class Builder 工具在类型为 K 的 ABAP 类库程序中定义. 如果在一个程序中使用该类, 则整个类库将被载入到程序内存中. 1. 全局类定义. 可以用 SE80 或 SE24 进入 Class Builder 进行创建. 使用全局类. REPORT z_af_049. DATA: ob_veh1 TYPE REF TO z_cl_vehicle1. START-OF-SELECTION. CREATE OBJECT ob_veh1. CALL METHOD ob_veh1-show_

您可能关注的文档

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档