首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java中的“‘import”与C/C++中的“#include”

Java中的“‘import”与C/C++中的“#include”
EN

Stack Overflow用户
提问于 2012-11-23 01:32:21
回答 9查看 19.4K关注 0票数 21

Java中的“import”行为是否与C/C++中的“#include”行为相同?具体地说,它是包括正在导入的整个库,还是只包括在后续代码中调用的类和方法?

EN

回答 9

Stack Overflow用户

发布于 2012-11-23 01:34:45

#include两者都不做,既不“导入”库,也不“导入”类或模块。

#include指令只是告诉预处理器包含另一个文本文件(源)的内容。就这样。

预处理文件A#include文件B的结果被传递给编译器,就像它们是一个文件一样,文件B被粘贴到文件A中#include指令所在的位置。

为了说明这一点:这一切都发生在之前的任何编译,代码生成。

作为一个副作用,C/C++预处理器可以独立于编译器使用,以处理任何类型的文本文件输入。

有人可能会争辩说,像#include这样的预处理器语句“实际上不是C/C++语言的一部分”,因为它们不是用C/C++编写任何程序所必需的,因为它们从来不会传递给编译器。

在(标准) C/C++编程的上下文中不使用表达式import,因为不需要导入任何内容。

C/C++模块在编译之前放在源代码级别的上,或者在编译之后由链接器放在一起。

票数 26
EN

Stack Overflow用户

发布于 2015-05-11 15:46:23

#include<stdio.h>表示复制此文件中stdio.h的内容,而import java.util.ArrayList表示如果您在此文件中找不到类,请查看上面提到的导入位置。Java导入不会增加文件的大小,它只是节省了很少的击键次数。

票数 11
EN

Stack Overflow用户

发布于 2012-11-23 01:35:06

在Java中,当您使用import时,您可以导入以下任一项:

完整包单个类:import foo.bar.Baz

  • a
  • import foo.bar.*
  • a类的单个静态成员:import static foo.bar.Baz.GRUT
  • every类的静态成员:import static foo.bar.Baz.*
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13517618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档