2013-11-22 32 views
2

我無法獲得一些簡單的Java代碼在Eclipse中運行。我的代碼如下:錯誤:無法找到或加載主類Java,因爲類文件的名字和類名是不同的?

class DrinkAgeTest{ 
    static int age =14; 

    public static void main(String[] args){ 
     if (age >=21){ 
      System.out.println("you may drink"); 
     } 
     else { 
      System.out.println("you may not drink,come back in " + (21-age)); 
     } 
    } 
} 

我在源文件夾中創建類名爲MathLearning。當我嘗試運行我的代碼,我得到了以下錯誤消息:

Error: Could not find or load main class MathLearning

是不是因爲我的DrinkAgetest類是從類的文件名,它被命名爲MathLearning如果讓我怎麼解決這個問題的不同?我無法在src右鍵菜單上找到重命名按鈕。

回答

0

類名和包含該類的文件的名稱必須相同。

如果您使用的是eclipse,它應該自動爲您解決它。

+0

反正有重命名類文件嗎? –

+0

好吧,這就是爲什麼我問。 –

+0

只需刪除.class文件。將您的.java文件從MathLearning.java重命名爲DrinkAgeTest.java。編譯並運行。你是否在爲你的開發使用IDE? – user1807337

1

哪一個類有主要也就是必須是公開的..

public class DrinkAgeTest{ 

} 
1

多少個源文件,你呢? 它們是什麼?

如果它只是一個 - 說「A.java」,確保它本身定義了「公共類A」。如其他人所說,類名必須與文件名匹配。然後轉到 命令提示符並執行「javac A.java」。這將產生文件A.class。 然後再從命令提示符下執行「java A」。這將運行您的A.class文件。

「的javac」是Java編譯器 的「java」是JVM

重命名類文件是不是做的方式。

0

要重命名類:

右鍵點擊你的src文件夾類DrinkAgetest,然後單擊重構。然後點擊重命名...

如果重命名類不解決問題(它不應該修復它),然後嘗試說什麼subash:

變化class DrinkAgeTestpublic class DrinkAgeTest

可能還有其他問題,可能你的編譯器因爲你刪除了它或者其他東西而找不到完全錯誤的類。

相關問題