网站首页 > 技术教程 正文
从SAP R/3 4.0版本开始,ABAP就引入了面向对象的开发概念。
1.ABAP语言的发展
1.宏编译器
2.ABAP语言出现-面向过程
3.ABAP语言-面向对象(Object-oriented)
4.ABAP对象是ABAP的扩展,集合了Java,C++,Smalltalk等语言。
2.面向对象解决方法中,重点放在了对现实生活中的对象结构化或抽象化。
1.属性(Attributes):对象的属性及特征
2.方法(Method):定义对象的行为
3.引入类的优点
1.可以重复利用代码(传统ABAP->重用部分)
2.可以封装数据
4.面向对象开发的特点
1. 抽象(Abstraction)
实现客观世界实体的模块化
2. 封装(Encapsulation)
就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
3. 继承(Inheritance)
它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展
4. 多态(Polymorphism)
允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。
5.类与对象
1.类(CLASS): 是创建对象的模板。
2.对象(OBJECT): 对象是指商品/物体/对象/目的,是类的实例。
3.根据类创建对象的过程成为实例化,根据类创建的对象为实例(Instance)。
6.类的区分
1.全局类(Global):使用事务代码SE24
存储在类池中(Class Library in the Repository), 所有ABAP程序都可以对其进行访问。
2.本地类(Local)
在程序中定义,只有该程序可以使用。
7.程序中创建类的规则
1.定义类的构成项目(属性、方法、事件)
CLASS <class> DEFINITION.
要素声明
所有项目都需要定义在三个访问区域之一中
ENDCLASS.
2. 实现类的方法
CLASS <class> IMPLEMENTATION.
ENDCLASS.
8.三个访问区域
1.Public Section:公有部分内部可见,外部可见,PUBLIC部分的组件,构成类与用户的接口。
2.Protected Section:保护部分 内部可见,继承可见,外部不可见,PROTECTED部分的组件,构成继承类之间的接口。
3.Private Section.:私有部分内部可见,继承不可见,外部不可见。
example 1 (类声明 对象创建 属性 方法访问)
CLASS LO_PEOPLE DEFINITION . "类的声明
*公有区域
PUBLIC SECTION.
*实例属性
DATA GV_VALUE TYPE C LENGTH 10.
* 静态属性
CLASS-DATA GV_STATIC TYPE C LENGTH 10.
*实例方法
METHODS METH.
* 静态方法
CLASS-METHODS METH_STATIC.
* 保护区域
PROTECTED SECTION.
* 私有区域
PRIVATE SECTION.
ENDCLASS .
CLASS LO_PEOPLE IMPLEMENTATION. "实现类中的方法
METHOD METH.
* 类的行为(方法的功能)
ENDMETHOD.
* 静态方法实现
METHOD METH_STATIC.
WRITE: / GV_STATIC.
ENDMETHOD.
ENDCLASS .
START-OF-SELECTION.
*类对象的声明
DATA LO_PEOPLE_OBJECT TYPE REF TO LO_PEOPLE.
* 类访问静态属性 类=>静态属性
WRITE: / LO_PEOPLE=>GV_STATIC.
* 访问静态方法 采用 call method 类名称=>方法名
CALL METHOD LO_PEOPLE=>METH_STATIC.
*对象的实例化
CREATE OBJECT LO_PEOPLE_OBJECT.
*对象创建完成后,该对象就可以访问公有部分属性,方法等。
WRITE:/ LO_PEOPLE_OBJECT->GV_VALUE . "访问实例属性
CALL METHOD LO_PEOPLE_OBJECT->METH. "访问方法 采用 call method 对象->方法名。
注:此处定义的类对象属于外部类,所以只能访问公有部分的属性和方法,不能访问保护区域、私有区域属性和方法。
猜你喜欢
- 2024-11-04 SAP ABAP干货 | 基础篇:三、ABAP对象和语句控制(3)
- 2024-11-04 科莱特SAP ABAP干货 | 基础篇:二、数据字典(2)
- 2024-11-04 赛锐信息:SAP ABAP 搜索帮助(赛锐案件最终结果)
- 2024-11-04 SAP ABAP编程基础(sap abap开发)
- 2024-11-04 SAP ABAP编程基础-语法结构(sap abaon)
- 2024-11-04 SAP ABAP干货 | 基础篇:三、ABAP对象和语句控制(2)
- 2024-11-04 科莱特 | SAP ABAP模块内容之屏幕设计(一)
- 2024-11-04 赛锐信息:SAP ABAP 锁定对象(sap锁表scope)
- 2024-11-04 科莱特 | SAP ABAP模块内容之屏幕设计(六)
- 2024-11-04 SAP中找表-几种经典的方法(sap常用表)
你 发表评论:
欢迎- 最近发表
-
- Win11学院:如何在Windows 11上使用WSL安装Ubuntu
- linux移植(Linux移植freemodbus)
- 独家解读:Win10预览版9879为何无法识别硬盘
- 基于Linux系统的本地Yum源搭建与配置(ISO方式、RPM方式)
- Docker镜像瘦身(docker 减小镜像大小)
- 在linux上安装ollama(linux安装locale)
- 渗透测试系统Kali推出Docker镜像(kali linux渗透测试技术详解pdf)
- Linux环境中部署Harbor私有镜像仓库
- linux之间传文件命令之Rsync傻瓜式教程
- 解决ollama在linux中安装或升级时,通过国内镜像缩短安装时长
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)