一個 Java 檔案中的多個類別宣告
在 Java 中,可以在同一個原始檔案中定義多個類別。然而,這種做法有一些警告和限制。
缺乏該技術的具體名稱
儘管這是一種常見的做法,但該技術沒有具體的名稱或正式名稱,與其他類別分類(例如內部類別、巢狀類別或匿名類別)不同。
編譯限制
雖然Java 語言規格(JLS) 規定係統可以強制限制引用其他編譯單元中的非公用類,但此限制在Java 編譯器中並未一致實現。
Javac 的限制
具體來說,Javac 在編譯類別時可能會出現錯誤如果兩個類別都不是它們所在文件的同名文件,則引用另一個文件中的頂級類別。此限制是由於編譯器無法確定要為非公共類別引用哪個原始檔。
避免問題
為了避免此限制,開發人員通常遵循在每個來源文件中放置單一頂級類別的約定。這種做法還可以更靈活地更改類別的存取級別,而不會影響編譯過程。
較新的Javac 功能
較新版本的Javac 還會在以下情況下提供警告:遇到從來源檔案外部引用的輔助類,進一步鼓勵每個文件使用單一頂級類別。
以上是一個檔案中可以存在多個 Java 類別嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!