一个类在java中可以有多少个内部类

时间:2011-10-16 20:07:55

标签: java

这是关于java的。这是在采访中提出的问题。

1 个答案:

答案 0 :(得分:5)

这个包含JavaTM虚拟机规范规范的http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html#40222似乎没有限制。

这可能是一个棘手的问题。

我会说有限制。可能你不能拥有4gb的.java文件,所以从这个数字推断你可以说可能只有不到几亿个类可以成为一个类的内部类。

如果我们认为这个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或一百万这真的很重要吗?你会在课堂上放几个内课?在多年的编程中我从未放过一个类中超过3或4个。但也许你的程序员喜欢编写长度超过10000行代码的单个类文件。“

hourse mouth(Sun Java站点)获取:Files longer than 2000 lines are cumbersome and should be avoided.显然这只是一个建议。