无法找到解决此问题的方法。
Guitar2.java:
public class Guitar2
{
private String serialNumber;
public Guitar2(String serialNumber)
{
this.serialNumber = serialNumber;
}
public String getSerialNumber()
{
return serialNumber;
}
}
Inv2.java:
import java.util.List;
import java.util.LinkedList;
public class Inv2
{
private List guitars;
public Inv2()
{
guitars = new LinkedList();
}
public void addGuitar(String serialNumber)
{
Guitar2 guitar = new Guitar2(serialNumber);
guitars.add(guitar);
}
}
两个文件都在同一目录中,都是755
,目录在类路径中。我收到错误消息:
[machine]me @ directory $ javac Inventory.java
Inventory.java:18: cannot find symbol
symbol : class Guitar
location: class Inventory
Guitar guitar = new Guitar();
^
Inventory.java:18: cannot find symbol
symbol : class Guitar
location: class Inventory
Guitar guitar = new Guitar();
^
2 errors
我读到如果一个文件在同一目录中,那么它的类可以在同一目录中的其他文件中使用,而不需要任何import语句。这有什么问题?
POST EDIT使用上述代码时的输出:
[me]machine @ ricks $ javac Inv2.java
Note: Inv2.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
我收到.class
个文件的.java
个文件。
答案 0 :(得分:3)
运行javac Guitar.java
然后(在编译完成并创建了Guitar.class之后)运行javac Inventory.java
答案 1 :(得分:1)
首先尝试编译Guitar.java。然后运行你的cmd。或试试这个:javac *.java
答案 2 :(得分:0)
确保两个类具有相同的包。即使它们位于同一目录中,不同的包也可能导致此问题。键入相同的包或使用导入,然后尝试使用javac *.java