Java文件中import语句的含义

Java文件中import语句的含义,java,Java,有谁能清楚地向我解释一下,当我们在Java文件中使用import语句时,到底会发生什么?如果我们添加越来越多的java类,是否会增加文件的大小?我们为什么不使用类加载器来实现同样的功能呢?导入的限制条件是什么?import语句对编译器说:如果在这个类中找不到函数,请查看导入列表 通过这种方式,您可以引用其他包中的函数,而无需将定义(如C++.h文件)复制到您自己的包中。包由类组成,包中的类由方法、变量等组成。 类有一个全名,它由包名和类名组成。如果需要在代码中使用类,则需要向编译器提供该类的全名

有谁能清楚地向我解释一下,当我们在Java文件中使用import语句时,到底会发生什么?如果我们添加越来越多的java类,是否会增加文件的大小?我们为什么不使用类加载器来实现同样的功能呢?导入的限制条件是什么?

import
语句对编译器说:如果在这个类中找不到函数,请查看导入列表


通过这种方式,您可以引用其他包中的函数,而无需将定义(如C++.h文件)复制到您自己的包中。

包由类组成,包中的类由方法、变量等组成。 类有一个全名,它由包名和类名组成。如果需要在代码中使用类,则需要向编译器提供该类的全名。因此,可以使用导入语句,也可以在代码中使用该类的每个位置键入完全限定名

例如,如果代码中需要
AraryList
,则使用import语句
import java.util.ArrayList而不是在每个需要Arraylist的地方键入完全限定的类名


有关更多详细信息,请参阅。

java中的导入只是编译器的提示。它根本不影响二进制类文件的大小。可以使用导入一次,也可以在每次使用时写入类的全名

导入只是对可读性和开发人员惰性的让步。

导入
声明(而非语句)本质上是源代码级别的简写启用码:它允许您使用单个标识符(例如
列表
min
)引用类型或
静态
成员与完全限定名称相反(例如,
java.util.List
Math.min

import
声明部分是源代码的编译时元素,在运行时不存在。在JVM字节码中,类型名称总是完全限定的,除非您使用的是编写糟糕的编译器,否则二进制文件应该只包含实际使用的类型的名称

类加载器用于一个完全不同的概念,与
import
特性完全无关

导入声明允许通过由单个标识符组成的简单名称引用
静态
成员或命名类型。如果不使用适当的
导入
声明,引用另一个包中声明的类型或另一个类型的
静态
成员的唯一方法是使用完全限定名

单个类型导入声明通过提及其规范名称导入单个命名类型

类型按需导入声明根据需要导入命名类型或包的所有可访问类型。从未命名包导入类型是编译时错误

单个静态导入声明通过给定类型的规范名称,从类型中导入具有给定名称的所有可访问静态成员

静态按需导入声明根据需要导入命名类型的所有可访问静态成员

工具书类
另见

各种
导入
相关问题
关于导入的语法作用:

  • -这是声明,不是声明
按需与单一类型:

在导入静态时

与业绩有关的问题:

  • -绝对不是
  • -不

    • Java中的import语句允许引用在其他要访问的包中声明的类,而无需引用完整的包名。如果您愿意总是使用java.util.List的全名来引用它,那么您不需要任何import语句,对于所有其他类也是如此。但如果您想将其引用为列表,则需要导入它,以便编译器知道您引用的是哪个列表

      java.lang包中的类是自动导入的,因此您不需要显式地这样做,例如,引用字符串


      阅读更多信息:

      用Java导入!=C或C++导入声明中的include通常不帮助解析方法,它们帮助解析类/类型。只有导入静态
才能直接帮助解析方法。