2015-10-16 40 views
1

我想知道是否有任何區別創建一個新的文件中的類和聲明一個裏面的另一個類,它仍然能夠從類的外部引用?我想知道,因爲這會幫助我的工作更有條理。創建一個類並在另一個類中聲明一個類是否有區別?

+1

是的。檢查[嵌套類](https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html) – sam

+0

自Q首次發佈以來,標記發生了顯着變化 – Plutonix

回答

2

Here是嵌套類的完整文檔。

如果你想知道何時使用內部類(從link):使用嵌套類

令人信服的理由包括以下內容:

它的邏輯分組類的方式,僅用於一個 的地方:如果一個類只對另一個類有用,那麼邏輯上它就是 ,將它嵌入到該類中,並將它們保持在一起。嵌套0​​這樣的「幫助類」使他們的包更加簡化。

它增加封裝:考慮兩個頂級類別A和B, 其中B需要訪問A的成員,否則將被聲明爲 私有。通過將B類隱藏在A類中,A的成員可以被宣佈爲 私有,B可以訪問它們。另外,B本身可以從外部隱藏 。

它可以導致更易讀和可維護的代碼:在頂級類中嵌套小型 類將代碼放置在更接近於使用 的地方。

是的,你可以從其他類訪問你的內部類。 (閱讀約controlling access to members of a class)。

Here你可以找到一個關於如何從類的「外部」訪問內部類的例子。

+0

感謝您的解釋和文檔!這沒有被錯誤標記,是嗎?由於它不是專門關於代碼的。 –

+0

我認爲標籤是正確的,這是一個java問題。 @zachwirta –

相關問題