我做了一些基准测试,比较了 int 与 Integer、long 与 Long、空类实例与具有 long 值的类实例的性能。
我有几个问题我自己无法回答:
- 为什么实例化空类或对象需要 28 个字节?
- Long 对象的实例化需要 29 个字节,原始 long 8 个字节,那么为什么与空类的差异只有 1 个字节?JVM做了什么样的优化?
我在 MacOS 上使用了 JDK1.6.0_30,代码可在 https://github.com/mousator/benchmarks/blob/master/src/sk/emandem/michal/AutoboxingTypeBenchmark.java获得 (您可以查看整个项目)
感谢您的回答!