类文件可以实现多少接口

时间:2012-06-14 13:23:46

标签: java oop interface multiple-inheritance

类文件可以实现多少个接口?类文件使用的接口数量是否有限制?提前谢谢。

5 个答案:

答案 0 :(得分:25)

出于所有实际目的,类可以实现的接口数量没有限制,但java不允许您从多个超类继承。

但是,如果你真的想挑剔,你可以说一个类可以实现的接口数量受接口id在java字节码中的最大值的限制,或者你必须实现这些的代码存储量接口或存储字节码的硬盘空间量。这些都是愚蠢的论点。显然,因为你的计算机没有无限的内存,无限的吞吐量和无限的代码空间,我们知道所有内容都有理论上的最大值,就像你在一个jar中可以拥有的理论最大代码行数一样。

但如果你真的想知道一个类可以实现的理论最大接口数,那就是65535。

答案 1 :(得分:20)

来自Limitations of the JVM上的Java VM规范:

  

类或接口的直接超接口数量被ClassFile结构的interfaces_count项的大小限制为65535。

这是唯一的限制。这是由于编译的Java字节码的结构。

答案 2 :(得分:6)

这个限制比技术更实用。

手写代码的数十个实际限制。对于生成的代码,你可以拥有更多,但我怀疑你的设计有问题,如果你有那么多。

The limit in the file format is 65535.

鉴于大多数大型项目的类都少于10K,因此很难想象为什么要在一个类中实现那么多接口。

答案 3 :(得分:2)

你的类可以实现Interfaces的无限制,一个Interface可以扩展Interfaces的无限制,但最佳做法是不要实现这么多接口。

答案 4 :(得分:-3)

类可以实现的接口数量没有限制。