Java中没有程序员可实现的"地址"概念.在像C或C++这样的语言中,对象的身份等同于它们的地址 - 如果两个对象位于同一个内存位置,则它们是同一个对象.在Java中,这种身份概念与对象的地址分离.这允许一些在C++中不可能的优化.例如,垃圾收集器理论上可以在内存中移动对象以避免碎片,只要它修改引用以便它们指向正确的位置即可.由于程序员无法直接访问内存地址,因此允许此操作.在C++中,它不起作用,因为编译器无法判断内存中的特定位模式是否是某种编码指针.
| 归档时间: |
|
| 查看次数: |
3307 次 |
| 最近记录: |