包说不存在

乌杰瓦尔·乔希

我正在用 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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章