Java导入包错误

标签 java package

嗨,我正在尝试创建 java 包。

我在名为 admin 的文件夹中创建了一个包,其中包含一个名为 Employee 的文件 - 这可以正确编译。在这个包之外,我还有另一个正在导入它的 java 文件。这是源代码。

import java.util.*;
// this works --> import admin.Employee;
import admin.*; // this doesn't

public class Hello {
    public static void main(String[] args) {
        Employee h = new Employee("James", 20000);
        System.out.println(h.getName());
    }
}

奇怪的是,第二个导入语句工作正常,但我得到第三个导入语句

  • 无法访问员工
  • 错误的类文件:./Employee.class

我只是使用javac Hello.java来编译

员工类位于管理包中。其结构为

文件夹“admin”->包含“Employee.class”和“Employee.java” 该文件夹外部是 hello.java 文件。

package admin;
import java.util.*;

public class Employee
{   
private static int nextId;

private int id;
private String name = "";
private double salary;

// static initialization block

static
{
    Random generator = new Random();
    // set nextId to a random number between 0 and 9999
    nextId = generator.nextInt(10000);
}

// object initialization block
{
    id = nextId;
    nextId++;
}

// three overloaded constructors
public Employee(String n, double s)
{
    name = n;
    salary = s;
}

public Employee(double s)
{
    // calls the Employee(String, double) constructor
    this("Employee #" + nextId, s);
}

// Default constructor
public Employee()
{
    // name initialized to ""--see below
    // salary not explicityl set--initialized to 0
    // id initialized in initialization block
}


public String getName()
{
    return name;
}

public double getSalary()
{
    return salary;
}

public int getId()
{
    return id;
}
}

最佳答案

package admin;  

import java.util.*;

public class Employee
{  

此外Employee.java 应该位于目录admin 中。例如

./Hello.java  
./admin/Employee.java

关于Java导入包错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17653836/

相关文章:

Java - 使用 JFileChooser 将字符串路径存储在表中,获取设置方法?

Java - 从日期中减去天数

java - 我如何获得真正可用的分辨率

r - 在 R 包中安装缺少的依赖项

java - 从命令行在包中运行Java

debian dh-exec install 创建额外的目录

java - 将应用程序连接到 postgres 数据库

Java 引用不带枚举名称的内部枚举

Java-Eclipse包推荐

python - 导入外部包的正确约定是什么?