A java class 在同一个包裹里找不到另一个

A java class can't find an other in the same package

我正在 ubuntu 中实施一个 java 程序,没有 IDE 将货币转换为欧元,我有 2 classes ConvertiEuro 和 Valuta 都在同一目录(包)称为 finanza,class ConvertiEuro 使用 class Valuta,当我尝试编译 Valuta.java 时它编译正确但是当我编译 ConvertiEuro.java 时出现错误说"ConvertiEuro.java:3: error: cannot find symbol"我不知道为什么这里是代码

  package finanza;

   public class Valuta {

     private String nomeValuta;
     private double totValuta;



    public Valuta(String nomeVal, double totVal) {

             nomeValuta = nomeVal;
             totValuta = totVal;
   }

       public String getNomeValuta() {

          return nomeValuta;    
       }

        public double getTotValuta() {
          return totValuta;     
   }

}

package finanza;

 import finanza.Valuta;

 public class ConvertiEuro {


private int valuteGestibili;
private int cont = 0;
private Valuta [] valutas;



public ConvertiEuro(int valuteGest) {

    this.valuteGestibili = valuteGest;
    this.valutas = new Valuta [this.valuteGestibili];


}
public boolean impostaValuta(Valuta val){


    if(cont<valuteGestibili) {
        this.valutas[cont] = val;
        cont ++;
        return true; 

    }
    else {
        return false;
    }   

}

}

这就是我的编译方式:javac ConvertiEuro.java

我强烈怀疑问题出在你的编译方式上。

ConvertiEuro.javaValuta.java 都应该在名为 finanza 的目录中,理想情况下你应该从 parent 目录编译,所以所有编译器都知道在哪里可以找到同一个包中的其他代码。对于名为 finanza.

的包,它 期望 在您当前所在目录下的 finanza 目录中找到一个源文件

虽然同时编译所有文件是最简单的:

javac finanza/*.java

...或者更好的是,使用 IDE 来为您管理这类事情。