2011-10-16 41 views
0

這是關於java的。這是面試中提出的問題。java中一個類可以擁有多少個內部類

+7

應該是42. – CodeCaster

+1

我無法理解人爲什麼給他-1。這可能是個狡猾的問題。 – xanatos

+1

例如,在這裏閱讀http://www.javakb.com/Uwe/Forum.aspx/java-setup/9178/Maximum-Java-Source-Size那裏似乎有限制某些類型的符號可以放多少在一個班級。 – xanatos

回答

5

這個包含JavaTM虛擬機規範規範的​​似乎沒有限制。

這可能是個詭計的問題。

我會說有限制。大概你不可能有一個大的文件4gb,所以從這個數字推斷出來,你可以說大概有不到一億個類可以成爲一個類的內部類。

如果我們認爲這4GB的文件限制的硬限制,我們說,我們希望所有的內部類是6位字符(AZaz09)長,

class A12345{} 

這是14個字符。

它是正確的寫:

class A12345{}class A12346{}class A12347{} // and so on 

現在,4GB/14個字符= 3億內部類。所以我很確定最大的數字是3億內部類。

現在,如果您真的對硬編碼感興趣,明天我將創建一個能夠創建一億個內部類的程序,並且我將嘗試在我的計算機上使用Windows Java 1.7 64位來查看多大的源文件可以。

我會補充一點,正確的答案應該是類似的「如果它是100或1000或100萬,它真的很重要嗎?你會在課堂上安排多少內部課程?在編程的幾年中,我從來沒有在一個類中放入3或4以上,但是也許你的程序員喜歡寫超過10000行代碼的單個類文件。「

並取自hourse mouth(Sun Java網站):Files longer than 2000 lines are cumbersome and should be avoided.顯然這只是一個建議。

相關問題