news 2026/4/18 10:23:01

ABAP OO的基本构造

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ABAP OO的基本构造

想象一下,你要造一种“全能机器人”(这就是一个类 Class)。

在 ABAP OO 中,要把这个机器人造出来并跑起来,结构非常固定,主要分为三部分:“画图纸”“造零件”“下指令”

以下是通俗易懂的必要结构说明:


1. 第一部分:画图纸 (CLASS ... DEFINITION)

这是告诉 SAP,这个机器人长什么样,有什么功能。

这一部分不写具体的代码逻辑,只定义“接口”和“变量”。它必须分为两个区域:

  • PUBLIC SECTION(对外部公开区):
    • 这是机器人的“操作面板”
    • 别人(其他程序)只能通过这里的方法和变量来控制机器人。
    • 比如:RUN(运行),GET_RESULT(获取结果)。
  • PRIVATE SECTION(内部私有区):
    • 这是机器人的“内脏和电路”
    • 只有机器人自己内部能用,外部程序看不见也摸不着。
    • 比如:MV_API_KEY(私钥),INTERNAL_CALCULATION(内部计算逻辑)。

abap

CLASS lcl_robot DEFINITION. PUBLIC SECTION. " 【对外接口】大家都能调用的方法 METHODS: run, say_hello. PRIVATE SECTION. " 【内部数据】只有机器人自己知道的秘密 DATA: mv_name TYPE string. ENDCLASS.

2. 第二部分:造零件 (CLASS ... IMPLEMENTATION)

这是告诉 SAP,这些功能具体是怎么实现的。

这一部分是写具体 ABAP 代码的地方(WRITE,IF,LOOP等)。刚才在 Definition 里声明了什么方法,这里就必须一个不漏地写出来。

abap

CLASS lcl_robot IMPLEMENTATION. METHOD run. " 具体的干活逻辑 mv_name = 'DeepSeek'. " 内部变量可以直接用 WRITE: / '机器人启动中...'. ENDMETHOD. METHOD say_hello. WRITE: / '你好,我是', mv_name. ENDMETHOD. ENDCLASS.

3. 第三部分:下指令 (调用/实例化)

这是主程序,真正把机器人造出来干活。

光有图纸(Class)没用,你得用NEW关键字把它造出来(实例化对象),然后按按钮。

abap

START-OF-SELECTION. " 1. 造机器人 (实例化) DATA(lo_my_bot) = NEW lcl_robot( ). " 2. 按按钮 (调用 Public 方法) lo_my_bot->run( ). lo_my_bot->say_hello( ). " 注意:你不能写 lo_my_bot->mv_name,因为那是 Private 的(内脏)。

总结一张图

结构名称通俗比喻作用关键字
DEFINITION产品说明书定义有什么按钮(Public),肚子里有什么零件(Private)PUBLIC SECTION,PRIVATE SECTION,METHODS,DATA
IMPLEMENTATION工厂车间具体的制作工艺,写代码逻辑的地方METHOD ... ENDMETHOD
NEW ...生产出厂把图纸变成实物,并在主程序中使用NEW class_name( ),->

记住这个公式:
ABAP OO =定义 (声明)+实现 (逻辑)+实例化 (使用)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 4:02:05

AI预测测试瓶颈的技术架构与行业实践

一、核心技术原理 多模态数据融合分析 AI系统通过集成代码库、日志流、性能指标(如TPS、响应时间)及用户行为数据,构建动态预测模型。监督学习算法(XGBoost/随机森林)分析历史缺陷与性能衰减的关联特征(如代…

作者头像 李华
网站建设 2026/4/18 4:03:03

搭建 AI 聊天机器人:”我的人生我做主“

目录 一、项目整体文件结构 二、后端代码(app.py)全解析 2.1 模块导入与环境初始化 2.2 Coze AI 交互类封装(CozeService) 2.3 Flask 路由与业务接口实现 2.4 项目启动入口 三、前端代码(index.html&#xff09…

作者头像 李华
网站建设 2026/4/18 4:04:55

Java计算机毕设之基于springboot的学生选课管理系统的设计与实现课程信息管理 选课、查询成绩(完整前后端代码+说明文档+LW,调试定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/17 19:56:05

吐血推荐8个一键生成论文工具,专科生轻松搞定论文格式规范!

吐血推荐8个一键生成论文工具,专科生轻松搞定论文格式规范! 论文写作的“救星”来了,专科生也能轻松应对 对于很多专科生来说,论文写作不仅是学术能力的考验,更是时间与精力的双重挑战。尤其是在格式规范、内容逻辑和语…

作者头像 李华
网站建设 2026/4/18 4:04:31

国标GB28181算法算力平台EasyGBS城市广场智慧监控与治理方案设计

城市广场作为城市公共空间的核心载体,承载着市民休闲娱乐、文化集会、应急疏散等多重功能,其安全防控、秩序管理与服务优化直接关系到市民生活质量与城市治理水平。随着城市化进程加快,广场人流量激增传统视频监控模式面临设备异构、管理低效…

作者头像 李华
网站建设 2026/4/18 4:04:28

Clawdbot MVP:从 0 → 1 的可落地设计方案

一、MVP 的唯一目标(先立生死线) MVP 只验证一件事:Clawdbot 能否在一个高频场景中,稳定做出“比人不差”的判断,并持续自动执行。⚠️ 注意: 不是追求“很聪明”不是覆盖所有场景而是:跑通一个…

作者头像 李华