java中的内存空间是怎么通过地址找到的

比如我有我阿姨家的地址我就可以根据地址走过去然后看门牌号和我手上的地址是不是吻合
那么java虚拟机有了地址后是怎么利用地址找到对应的内存空间的?
我的猜测是:虚拟机遍历内存里所有的内存地址直到读到和虚拟机手上的地址一样时才指向那个内存空间

逐个遍历的代价是很高的,不知道你对操作系统的原理有多少研究。
有点类似你说的,只不过你把这个换成一本书就好,你想知道某个,内容回去看目录,先找大章节,后找小章节,一层一层找下去,知道找到你要的信息。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-03
既然是讨论,我就觉得你的猜测是错误的,不可能去遍历内存里所有的内存地址的,很简单这样慢,不是一个优秀语言的设计思想。JAVA当中 A a = new A()产生一个对象的时候,就已经在内存当中分配了空间,和地址,既然已经有了地址我为什么还要遍历内存里的所有内容来匹配呢?我为什么不能直接找到这个地址呢?

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网