我知道在java文件中聲明的public
類的名稱必須與其文件名相同。但我想知道這不是給我一個編譯錯誤,而是它運行成功。在java中省略訪問說明符
class Foo //<-- this can be any name...
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
我知道默認訪問是package private
。對於上述程序,類名和文件名不必相同。它正確執行,而不是編譯器錯誤。 任何人都可以拋出一些光?謝謝。
編輯:
現在我明白了!但另一個問題讓我感到震驚。當同一個文件中有兩個這樣的類時會發生什麼?
那麼,我認爲.class
文件將生成的類已執行main
方法。沒有任何編譯錯誤,但令我意外的是沒有任何生成的文件。爲什麼?
在公共訪問說明符中保留兩個類在一個java文件中。一個與主要和一個沒有主要。你會得到警告或錯誤。 – Rahul
@Rahul:我看不出與問題有關的問題。 –