ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
ABAP
使用关键字重复引入一个include program,会报syntax error:
原因是因为ABAP对include这个关键字的实现和其他编程语言有点不一样,在激活时简单地把被include的program的全部源代码替换原程序里INCLUDE incl这一行,所以重复引入一个include program会报错。
值得一提的是,ABAP report悄悄得include了很多标准的program,比如.
因此如果再次重复引入,同样的会遇到语法错误。
import in Java
Java的import和ABAP的include关键字实现的效果不一样,在Java里使用import引入包名可以让程序猿少打些字,比如比较下图第13行和第15行的写法,明显前者要简洁一些。
因为import引入的是包名而不会像ABAP那样将包的源代码引入到使用了import的源程序,因此可以重复import。只是将Java编译器生成的.class反编译之后,会发现编译器自动将冗余的import移除,且自动引入了新的包java.io.printStream:
include in C
谭浩强老师的《C程序设计》一书中提到,编译器预处理时,要对#include命令进行"文件包含处理":将被include的头文件的全部内容复制到#include处。
那么C语言的include类似ABAP的关键字include。
例子:a.c里include标准的:
这个头文件的位置: /usr/include
里面是一些宏定义和函数声明:
b.c里没有include这个头文件:
所以b.c编译生成的执行文件尺寸小于a.c:
import in C4C ABSL
同Java的import,不会对后台生成的ABAP代码有任何影响。
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
从Java的前景与就业情况看,Java是你首选的编程语言,没有之一
从Java的前景与就业情况看,Java是你首选的编程语言,没有之一 之前有写过文章,介绍了哪些语言适合小白入门,今天再强调一下这个话题,因为他很重要。 如果你不是科班出身,没有编程基础,那么Java就是你入门的首选语言,没有之一。别再跟我说Python怎么样,Golang怎么样,JavaScript怎么样、Scala怎么样、Kotlin怎么样、大数据怎么样、人工智能怎么样、云计算怎么样、前端怎么样...等等,我承认,这些都是很不错的技术,很有钱途的技术,但是,和你无关。 隔行如隔山,墙外的人道听途说,觉得大数据好、人工智能好,当我问他们好在哪里,他们却说不出来,只是感觉,人云亦云罢了。再好,和你无关。 小白的你在种种诱惑、错乱的信息干扰下,往往就失去了方向,在学习上栽了跟头,浪费了时间和金钱。所以,我建议各位网友,想从事软件行业,你首先要有点求知欲、再选个靠谱的语言入门就OK了,语言我建议是Java,理由如下: 1.就业机会多,你可以到招聘网站上看看。 2.老牌、严谨、生态健全、社区活跃、丰富的行业经验沉淀 3.编程排行榜长期稳居前三,到现在,是企业开发的首选。 4.面向对象思想,能够...
- 下一篇
如何计算并测量ABAP及Java代码的环复杂度Cyclomatic complexity
代码的环复杂度(Cyclomatic complexity,有的地方又翻译成圈复杂度)是一种代码复杂度的衡量标准,在1976年由Thomas J. McCabe, Sr. 提出。 在软件测试的概念里,圈复杂度用来衡量一个模块判定结构的复杂程度,数量上表现为独立线性路径条数,即合理的预防错误所需测试的最少路径条数。圈复杂度大说明程序代码可能质量低且难于测试和维护。 计算公式 环复杂度 = E − N + 2 E = 程序控制流图中边的个数 N = 程序控制流图中点的个数 看个具体的例子。下面这段ABAP代码的环复杂度根据公式计算为3. DATA: lv_value TYPE i VALUE 1. IF lv_value = 1. WRITE: / 'always happend'. ELSEIF lv_value = 2. WRITE: / 'not possible'. ELSE. WRITE: / 'even not possible'. ENDIF. 先把代码的程序流图画出来: 在ABAP里用Code inspector这个工具测量代码的环复杂度: 具体步骤参考我的ABAP博客: ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7安装Docker,走上虚拟化容器引擎之路