所以我有一个名为com.company.example的包,我想在我的.class文件中导入它。我在哪里放这个com.company.example包? 我不明白“classpath”请不要在答案中使用它。 我试过导入com.company.example。*;但没有找到包裹
感谢。
答案 0 :(得分:2)
所以我有一个名为com.company.example的包,我想在我的.class文件中导入它。
您不会将包导入类文件。您可以将包导入Java源代码,这样您就可以使用它们中的类而不使用类的全名。您导入的包不会成为类文件的一部分。
我不明白“classpath”请不要在答案中使用它。
很抱歉,但问题的答案是来使用类路径(CLASSPATH
)。类路径是可以找到.class
和.jar
文件的目录列表。当您使用包中的类时,JVM中的默认类加载器会搜索类路径以查找提供您导入的包的.class
文件(直接或在.jar
内)。 (还有其他类加载器,但正常情况是搜索CLASSPATH
.class
文件的情况。)
例如:假设您要在代码中使用类com.company.example.Foo
。你可以这样做:
com.company.example.Foo foo = new com.company.example.Foo();
foo.doSomething();
...但这很不方便,所以你在源文件的顶部执行此操作:
import com.company.example.Foo;
...然后在您的代码中:
Foo foo = new Foo();
foo.doSomething();
无论哪种方式,您的.class
文件都包含您的代码,并且不包含您正在使用的Foo
类。
在运行时,当JVM发现您要使用com.company.example.Foo
时,它将查看CLASSPATH
.class
个文件(或.jar
个文件,其中包含.class
找到一个提供com.company.example.Foo
的文件。当它发生时,它使用该文件中的类。
因为类路径是使用Java的基础,所以我建议使用reading up on it。