【发布时间】:2018-03-21 05:14:13
【问题描述】:
两个 .java 文件 A.java 和 B.java 都有这一行:
package mypackage
如果我想A.class和B.class都属于同一个包mypackage,
我是否需要遵循一些规则来存储A.class 和B.class?
我可以将A.class 存储为/pathnametoA/A.class 和B.class 存储在/pathnametoB/B.class 下,其中pathnametoA 和pathnametoB 是任意路径名吗?
比如有人写了B.java作为Junit测试文件来测试A.java,它们都属于同一个包mypackage。我以为A.class和B.class会存储在同一目录mypackage下,但A.class实际上存储在/commondpath/bin/mypackage和B.class下/commonpath/test/mypackage下。 A.class和B.class可以属于同一个包mypackage吗?
请注意,我在 Ubuntu 的命令行中使用 javac 和 java。
谢谢。
更新:
Java 中的包是否定义为一个目录下的所有 .class 文件?
那么包和目录的路径名是一一对应的吗?
【问题讨论】:
-
你为什么不试试看会发生什么?
-
我已经尝试过这个例子。它有效,但我不明白我需要遵循什么规则。
-
A需要写package commondpath.bin.mypackage,B需要写common path.test.mypackage,但是两者不在同一个包下,mypackage是不同的,因为它们属于不同的路径 -
谢谢。 Java 中的包是否定义为一个目录下的所有 .class 文件?
标签: java