1、定义接口
INTERFACE intf [PUBLIC].
  [components]
ENDINTERFACE.

2、注意点:

2.1、接口中所定义的所有东西默认都是公共的,所以不用也不能写PUBLIC SECTION。

2.2、只有在接口中定义的常量(CONSTANTS)才可以使用 VALUE 选项来初始化,而DATA、CLASS-DATA定义的变量是不能初始化

2.3、接口定义中也只能包含成员声明部分,而具体的实现将在具体类中进行

2.4、如果要实现某个接口,则在类的公共声明PUBLIC SECTION部分进行实现,其余部分不行

3、定义一个接口 MediaPlayer,表示家庭影院的一个设备。MediaPlayer 中包含 play(),stop(), open()三个方法,分别表示播放、停止和开仓功能。
MediaPlayer 有三个实现类,分别为: DVDPlayer,表示 DVD 播放器; CDPlayer,表示 CD 播放器;TapePlayer,表示录音机(播放磁带)。

INTERFACE mediaplayer.
CONSTANTS pi TYPE f VALUE '3.1415926'.
CLASS-DATA dd type f .
METHODS: play,stop,open.
ENDINTERFACE. CLASS dvdplayer DEFINITION.
PUBLIC SECTION.
INTERFACES mediaplayer.
ENDCLASS. CLASS dvdplayer IMPLEMENTATION.
METHOD mediaplayer~play.
WRITE / 'dvd is play'.
ENDMETHOD.
METHOD mediaplayer~stop.
WRITE / 'dvd is stop'.
ENDMETHOD.
METHOD mediaplayer~open.
WRITE / 'dvd is open'.
ENDMETHOD.
ENDCLASS. CLASS cdplayer DEFINITION.
PUBLIC SECTION.
INTERFACES mediaplayer.
ENDCLASS.
CLASS cdplayer IMPLEMENTATION.
METHOD mediaplayer~play.
WRITE / 'cd is play'.
ENDMETHOD.
METHOD mediaplayer~stop.
WRITE / 'cd is stop'.
ENDMETHOD.
METHOD mediaplayer~open.
WRITE / 'cd is open'.
ENDMETHOD.
ENDCLASS. CLASS tapeplayer DEFINITION.
PUBLIC SECTION.
INTERFACES mediaplayer.
ENDCLASS.
CLASS tapeplayer IMPLEMENTATION.
METHOD mediaplayer~play.
WRITE / 'tape is play'.
ENDMETHOD.
METHOD mediaplayer~stop.
WRITE / 'tape is stop'.
ENDMETHOD.
METHOD mediaplayer~open.
WRITE / 'tape is open'.
ENDMETHOD.
ENDCLASS. *声明对象
DATA: dvd TYPE REF TO dvdplayer,
cd TYPE REF TO cdplayer,
tape TYPE REF TO tapeplayer. START-OF-SELECTION. CREATE OBJECT dvd.
CREATE OBJECT cd.
CREATE OBJECT tape. CALL METHOD dvd->mediaplayer~play. CALL METHOD cd->mediaplayer~stop. CALL METHOD tape->mediaplayer~open. write / dvd->mediaplayer~pi.
write / dvd->mediaplayer~dd. dvd->mediaplayer~dd = . write / dvd->mediaplayer~dd.

ABAP接口用法的更多相关文章

  1. (实用篇)php支付宝接口用法分析

    本文实例讲述了php支付宝接口用法.分享给大家供大家参考.具体分析如下: 现在流行的网站支持平台,支付宝当仁不让的老大了,现在我们就来告诉你如何使用支付宝api来做第三方支付,把支付宝放到自己网站来, ...

  2. php新浪微博登录接口用法实例

    本文实例讲述了php新浪微博登录接口用法.分享给大家供大家参考.具体分析如下: 在做微博登陆之前是需要申请到APP KEY 和App Secret,这个的申请方式请去 open.weibo.com 申 ...

  3. Java语言Socket接口用法详解

    Socket接口用法详解   在Java中,基于TCP协议实现网络通信的类有两个,在客户端的Socket类和在服务器端的ServerSocket类,ServerSocket类的功能是建立一个Serve ...

  4. Android中Parcelable与Serializable接口用法

    转自: Android中Parcelable接口用法 1. Parcelable接口 Interface for classes whose instances can be written to a ...

  5. JS版微信6.0分享接口用法分析

    本文实例讲述了JS版微信6.0分享接口用法.分享给大家供大家参考,具体如下: 为了净化网络,整顿诱导分享及诱导关注行为,微信于2014年12月30日发布了<微信公众平台关于整顿诱导分享及诱导关注 ...

  6. ABAP接口之Http发送json报文

    abap 调用http 发送 json 测试函数 SE11创建结构:zsmlscpnotice SE37创建函数:zqb_test_http_fuc1 FUNCTION zqb_test_http_f ...

  7. Android中Parcelable接口用法

    from: http://www.cnblogs.com/renqingping/archive/2012/10/25/Parcelable.html Interface for classes wh ...

  8. abap append 用法

    [转自http://blog.chinaunix.net/uid-7982817-id-91999.html]Append用法总结 2008-11-14 11:42:19 分类: Syntax APP ...

  9. jmeter的简单http接口用法

    1.  jmeter的启动:windows下的环境 进入jmeter的并目录双击启动 Mac电脑 进入bin目录找到jmeter.sh 文件 在终端执行./jmeter.sh 或者./jmeter. ...

随机推荐

  1. sql 的基础语句

    USE day15; -- 创建表CREATE TABLE teacher( id INT, NAME VARCHAR(20))-- 查看所有表SHOW TABLES; DESC student; D ...

  2. JavaScript-Tool:three.js

    ylbtech-JavaScript-Tool:three.js Three.js 是一款运行在浏览器中的 3D 引擎,你可以用它创建各种三维场景,包括了摄影机.光影.材质等各种对象.你可以在它的主页 ...

  3. JQuery EasyUI validate 扩展

    validate 扩展js $.extend($.fn.validatebox.defaults.rules, { equals: { validator: function(value,param) ...

  4. 关于从request对象中获取路径的问题

    从request对象中获取路径的问题:例如: 项目名为:tmall_web     请求的servlet名为:loginServlet 示例代码如下: @Override protected void ...

  5. CentOS 下部署Nginx+Gunicorn+Supervisor部署Flask项目

    原本之前有一部分东西是在Windows Server,但是由于Gunicorn不支持Windows部署起来颇为麻烦.最近转战CentOS,折腾一段时间,终于简单部署成功.CentOS新手,作为一个总结 ...

  6. jquery获取元素对应高度

    https://www.cnblogs.com/sntetwt/p/3823592.html 获取点击元素距离页面的高度 $(select).offset().top - $(document).sc ...

  7. wordcount作业

    搭档:201631062427,201631062627 代码地址:https://gitee.com/oyyyyyy/wordcount 作业地址: 一: 代码互审情况 我们采用的都是c语言的方式完 ...

  8. ue4 bp singleton

    .h UCLASS(Blueprintable) class USingletonBP: public UObject { GENERATED_UCLASS_BODY() /** * Singleto ...

  9. MySQL注释符号

    今天在执行mysql语句时很奇怪为什么没有执行,查询后发现“-- ”是mysql的注释符号,不会执行的  mysql注释符有三种: 1.#... 2."-- ",注意--后面有一个 ...

  10. linux下提示/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found 解决办法

    1.查看gcc版本中包含哪些库. strings /usr/lib64/libstdc++.so.6 | grep GLIBC GLIBCXX_3. GLIBCXX_3.4.1 GLIBCXX_3.4 ...