我只是想知道
中是否有任何性能问题1)在单个java文件中使用两个类。
2)使用内部java类。
我想将它用于内部数据结构和支持类。 还请告诉我哪一个在性能方面会更好?
答案 0 :(得分:4)
类源代码位于单个Java文件或两个单独的Java文件中这一事实对字节代码没有任何影响:两者都导致完全相同的字节代码。
内部类与任何其他类没有区别,除了它可以访问其封闭类的字段和方法。对绩效的影响基本上是不存在的。
我同意@EricStein:在遇到真正的性能问题之前不要担心性能问题。力求可读性,可维护性和可理解性。标准是每个源文件有一个顶级类。你应该尊重这个标准。
答案 1 :(得分:2)
在有人注意到生产环境中的实际问题之前,不要担心性能。其他任何事情都是过早的优化。
话虽这么说,不要在一个java文件中使用两个顶级类。这是一个糟糕的代码味道。
答案 2 :(得分:2)
在同一个文件中创建两个类并创建内部类之间没有区别
正弦java编译器为每个类生成不同的.class
文件,不论是否为内部类。
所以在运行时没有区别。
答案 3 :(得分:1)
首先,
我有点不同意如果你要比较inner class
并在一个classes
中写两个file
。
内部类作为您的设计规范与Outer类绑定。
在同一个file
写两个课程取决于你(考虑个人品味)。显然模糊和欢迎维护issues
。
不存在性能问题,因为一旦您编译该文件,就会为每个.class
生成单独的class.