簡體   English   中英

初學者Java問題:____無法解析為一個類型

[英]Beginner Java problem: ____ cannot be resolved to a type

我目前正在通過本教程學習 Java,雖然命名法有時讓我感到困惑(實際上,這一章很嚴重),但我很擅長弄清楚代碼的工作原理。 除了在這種情況下,它沒有,而且不是我的代碼不起作用,而是教程的。

這是給我帶來問題的片段:

public class Chapter6 {

    public void bar2(Student s1, Student s2) {
        Student joe = new Student("joe");
        Student jack = new Student("jack");
        bar2(joe, jack);

    }

}

Eclipse 抱怨第 3 行,Student 無法解析為類型(兩次)。 我可以通過創建一個名為 Student 的類來解決這個問題,但是它仍然在第 4 行和第 5 行抱怨構造函數 Student(string) 未定義。 作為我解決它的最后嘗試,我將這段代碼放在 Student 類文件中(並將第一行中的類從第 6 章更改為 Student),但這並沒有解決任何問題。

我很高興能得到任何幫助,如果你能提供 ELI5,我會更高興,因為正如我所說,函數的命名真的讓我感到困惑。

您需要使用帶有 String 參數的構造函數創建一個類Student

然后,別忘了在Chapter6類中導入

首先你需要創建一個Student類,你得到的錯誤是因為當程序編譯時,試圖找到Student類。 而且不是進口的。

 public class Student {

   private String name;

   // This is the constructor, it will get called when you do: new Student("joe")
   public Student(String name) {
      this.name = name;
   }
}

然后在課堂第6章。

public class Chapter6 {

    public static void main(String [] args) {
        Student joe = new Student("joe");
        Student jack = new Student("jack");
        bar2(joe, jack);
    }

    public void bar2(Student s1, Student s2) {
        // Do stuff here
    }

}

請注意,如果您將方法調用 bar2 保留在方法 bar2 中,則會出現錯誤 StackOverFlow,因為該方法會無限期地調用自身

@Ezequiel Falcon回答是對的。 您需要先創建一個Student類,然后在第 6 Chapter6導入Student類。 此外,您需要修改第bar2 Chapter6類中的bar2方法。

public class Student {

 private String name;

 public Student (String name) {

  this.name = name;

 }

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM