Java不包含文件。但是,您可以通過使用import
語句直接使用簡單名稱的類。
基本上你需要你定義每個(頂層)類的文件。這允許IDE重命名編譯單元,並執行其他重構。除此之外,它可以讓您輕鬆地在正確的位置添加代碼。
Java那樣使用包創建命名空間。包本身是完全獨立的名稱空間。儘管名稱空間似乎是一個樹形結構,但在Java中,每個包實際上都不與任何其他包相關。因此,您不能將其用作文件夾結構,不允許使用..
。一旦引入「超級套餐」,這可能會改變。
Java的import
語句看起來很像#include
,但名稱的改變是經過深思熟慮的:不是抓住了文件,使已知該文件的定義,它只是一個簡單的更容易引用類的聲明和接口。它除了給一個班級縮短名字(或者對於import static
,常數和其他static
成員)沒有其他影響。
大部分時間使用反映包名稱的文件夾結構來表示頂級類。這使IDE和開發人員可以輕鬆找到表示該類的文件。它還可以很容易地進行版本控制。然而,它不是Java規範本身的一部分; Java源和類的位置未定義。早期的IBM IDE實際上將Java源代碼和類存儲在數據庫中;他們根本沒有使用文件。較新的IDE(例如Eclipse)可能使用不同的源文件夾,例如一個用於單元測試文件,一個用於庫本身。
所以最後,包括包的唯一方法是通過指定導入包的所有類的完整包名,然後一個點,然後導入類或*
通配符。
import java.util.Vector;
import java.util.*;
大多數IDE的將創建這些導入語句,你選擇了正確的類進口(萬一有個教學班,在不同的包中的同名)可能經過。
更多信息可在Java Language Specification (Java 7 version)中找到。
在你的情況下,你已經定義了一個Main
類的根或默認包,這是強烈不鼓勵。您可以直接參考Main
而不需要任何import
聲明。 Other
類是在同名的Other
包中(在包名中使用大寫字母也非常不鼓勵)。您可以使用import Other.Other
來引用它。
雖然您所說的內容沒有任何技術上的錯誤,但您實際上並沒有真正回答「如何在Java中包含上述目錄中的文件?」這個問題。 – 2013-10-01 03:37:08
@MatthewG好的,重寫了答案,謝謝你的擡頭 – 2013-10-01 18:56:53