Привет Я играю с созданием пакетов Java.Ошибка пакета импорта 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
- плохой класс файла:
./Employee.class
Я просто используя javac Hello.java для компиляции
класс сотрудника находится в пакете admin. Структура
папка «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;
}
}
Вы делаете класс Employee общедоступным? – rAy
Что такое спецификатор доступа для класса «Сотрудник»? – Abubakkar
Можете ли вы показать нам исходный код 'Employee', структуру вашего пакета и как вы компилируете файлы? – NINCOMPOOP