永发信息网

java基础问题,假如有个类A,声明A a=new A(1);然后又赋值a=new A(2),那第

答案:6  悬赏:40  手机版
解决时间 2021-03-23 04:40
java基础问题,假如有个类A,声明A a=new A(1);然后又赋值a=new A(2),那第
最佳答案
我来简单解释下吧,首先楼主要明白java中用new创建对象,jvm究竟干了些什么事情。 A a=new A(1);这句话,先看等式右边,new A(1),以1为构造参数 在 堆里面创建了一个对象。然后看等式左边:在栈中创建了一个引用a,a指向的地址就是堆里面 new A(1)的这个地址。再看这句 a=new A(2),其实是又在堆里面创建了一个new A(2)对象,然后把引用小a指向A(2)。至于第一个new A(1)这个对象还在堆里面,注意,并没有被销毁掉。那它什么时候被销毁呢?java里面有个垃圾回收,它会检测堆里面所有的对象,一旦发现,栈里面没有引用指向它了,那堆里面这个对象就会被销毁。也就是说,堆里面的对象什么时候销毁是由垃圾回收干的,我们不需要关心。------一口气打了这么多,希望我解释清楚了追问恩,彻底明白了,谢谢。。主要就是检查对象是否被引用。。
全部回答
会储存起来追问那么第一个什么时候会被销毁?追答在下一个新的对象之前追问。。。那你说的储存起来怎么回事
都是一个对象 只是对象属性的值发生了改变 你可以自己做实验啊 这些小细节要自己手动去试 多动手
new的两个对象在堆内存里,a是对象的引用。销毁是垃圾回收器的事,他会自动管理的
如果没有其他的对这对象的引用,这个对象会被销毁,但一般不会马上回收。垃圾回收器会慢慢扫描的,所以回收时间是不确定的。
不会的。取决于JVM虚拟机的垃圾处理算法
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
老公出轨回归后待我特别特别的好,也不联系外
单选题下列物质中既能跟盐酸反应又能跟氢氧化
上高沙在什么地方啊,我要过去处理事情
单选题“墙角数枝梅,凌寒独自开.遥知不是雪
遂不得履的遂古义是什么意思
霸气古风女子说的句子,求自勉的古诗句
公司 扣罚员工工资合理吗 可以怎样做
做削骨需要注意哪些问题
滑动摩擦系数与加速度有关吗?
下列各组语句中,划线的词的意义和用法都相同
卖家如何设置公益宝贝,卖家如何取消公益捐赠
如图所示,在把吸管不断剪短的过程中吸管中空
时尚涮烤吧在哪里啊,我有事要去这个地方
我的爷爷是抗美援朝军人、那时候落下了残疾、
安装完coreldraw x6之后,程序无法启动
推荐资讯
请问这是什么错误: Unhandled exception in
淄博世纪缘的钻戒,不知道怎么样?求买过的经
如图所示,电路中L是自感系数较大的电感器.当
鸿泰商务宾馆地址在哪,我要去那里办事
我的孩子2岁一直不敢和外人说话,而且见着人
小学生资料卡片怎么写,现在小学生用的生字卡
小区规划的出口与城市道路连接处是一个弯道,
手机网购怎么用,步骤是?要详细步骤
“须知”的意思是什么?
我不知道为什么我总是怕别人骂我?
重感灵片服用过多?怎么办?
单选题连年种植花生的土壤里有大量的蛴螬(一
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?