我正在用 java 编码来测试包。我在 Demo 中有一个名为 Demo 的文件夹,我有 2 个文件夹,一个名为 Say,另一个文件夹名为 OtherMainClass。
在 Say 文件夹中,我有一个名为 SayClass.java 的类,这里是代码:
package Say;
public class SayClass {
public void sayTestMessage() {
System.out.println("This is a test");
}
}
在 OtherMainClass 文件夹中,我有一个名为 OtherMain.java 的文件,这里是代码:
import Say.*;
public class OtherMain {
public static void main(String[] args){
SayClass s = new SayClass();
s.sayTestMessage();
}
}
当我编译 OtherMain.java 时,出现以下错误:
OtherMain.java:1: error: package Say does not exist
import Say.*;
^
OtherMain.java:5: error: cannot find symbol
SayClass s = new SayClass();
^
symbol: class SayClass
location: class OtherMain
OtherMain.java:5: error: cannot find symbol
SayClass s = new SayClass();
^
symbol: class SayClass
location: class OtherMain
3 errors
java为什么找不到Say包?如果我对软件包的理解有误,请解释我做错了什么,什么是正确的。
在 OtherMain 中导入时必须使用以下语句
import Demo.Say.SayClass
包名称约定也是小写的,所以请重构您的代码以使用从 Say to say 和 Demo 到 demo 。并且在创建 SayClass 时使用包 demo.say 。所以你的代码应该像
package demo.say;
public class SayClass {
public void sayTestMessage() {
System.out.println("This is a test");
}
}
完成将所有包重命名为小写后,您可以使用
import demo.say.SayClass
或者
import demo.say.*
在 OtherMain 类中
建议:最好使用标准社区版本的 IDE,如 Intellij Idea、Eclipse 等,它会自动处理包命名、约定和许多其他家庭事务
并通过 java 命名约定文档/教程,如https://www.javatpoint.com/java-naming-conventions
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句