问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java 对象引用

发布网友 发布时间:2022-04-30 04:54

我来回答

3个回答

热心网友 时间:2023-10-14 09:32

java的内存有堆和栈之说,对象放在栈里,而对象引用的变量或是自己定义的变量都放在一个堆里,也就是对象和变量不是在一起放着的,而是一一对应的关系。
举个例子:
nb1.i这个对象引用的变量i在1号"堆"里
nb2.i这个对象引用的变量i在2号"堆"里
nb1这个对象在1号栈里,
nb2这个对象在2号栈里.
这样是形成了1号栈引用1号堆里的数据;而2号栈引用的是2号堆里的数据。

最后nb1=nb2,就是两个对象同时指向nb2所引用的堆里的变量。
因为nb2.i本来等于=33,那么就会把nb1.i给回收掉,而nb1.i这时候就不是22了,而是33.
这两个对象都同时引用的是被改变有的变量.也就是33.所以现在对那个栈进行数据更改的话,那么其实都是对两个对象进行了更改。

图解:
本来是
1栈=========================>1堆
2栈=========================>2堆
最后是
1栈
===================》1堆(i=33)
2栈

热心网友 时间:2023-10-14 09:33

你的理解部分是对的,对nb1和nb2分配内存不是在注释1和注释2处,而是它的上两句,new NumberTest()才是对这两个对象分配内存,而注释1和注释2处只是对该对象的中的变量i分配内存。另外,在没有为对象分配内存的情况下,不能用.(点)操作(即不能用它引用任何属性,否则会有nullpointException异常)

热心网友 时间:2023-10-14 09:33

你的理解是正确的
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑上制作相册时转换源文件用电脑如何制作相册视频 二十四节气立秋的特点 立秋的来历和风俗-今日头条 立秋这个节气的特点 立秋节气的特点和由来-今日头条 怎么设置电脑键盘灯光笔记本怎么开键盘背光 苹果电脑win10键盘灯怎么开 苹果电脑win10键盘灯打开方法 为什么我电脑CPU 什么都不运行温度还100以上? 麻烦大家看看我的cpu温度不稳定 电脑cpu热怎么解决电脑cpu过热要怎么解决 电脑cpu温度高怎么解决办法 船用螺旋桨厂家 java对象引用问题 java里怎么算是互相引用我这样写算不算对象能不能被回收 用我名字分期买车,贷款就差录视频的程序可以吗 一个java文件里的两个类要怎么互相引用 华为手机突然接电话没声音了,但是扬声器有声音怎么回事? java中一个类不同对象之间的互相引用 手机听筒没声音但扬声器有声音是什么问题? 我需要一个好用的3D人物动作设计的软件,以及一个可以截图生成图片,最好是一个制作漫画的软件配备的! java 两个类相互引用怎么破 手机突然没有声音了扬声器有声音 华为 荣耀7怎样关闭后台运行? 冬天车玻璃起雾吹热空调除雾是什么原理 手机只有扬声器有音但是有杂音 贷款买车录视频是怎么回事 手机扬声器有声音放歌没有声音怎么办 贷款买车视频面签正常吗 荣耀10后台怎么清理,求教 欧式装修风格和中式装修风格分别有什么特点? 荣耀30后台清理保护怎么开 试说明汽车挡风玻璃的除霜原理 怎么查看自己手机的运行内存(RAM)? Java中,如果两个对象互相引用,是否可以被GC 清理掉 java中有两个对象a和b,当a=b的时候是把a的引用给了b,还是把b的引用给了a呢? 谁知道联通智慧沃家套餐安装的路由器的密码可以修改么?怎么修改? java如何将类对象的引用指向另一个类对象 java中类,对象和引用间的关系 java中如何引用对象 智慧沃家的登录密码忘了怎么办?手机号码也不用了 荣耀8手机怎么关闭后台运行的应用? 智慧沃家上网配置+逻辑ID 智慧沃家宽带账号密码是什么? 我登陆智慧沃家Ap提示WiFi密码错误是什么原因? 智慧沃家路由器恢复出厂设置之后怎么办- 问一问 为什么我的QQ群解散不了啊? 十万火急!!! 坐长途汽车允许带几个孩子? 有没有破QQ密码的软件 qq忘了密码有什么软件可以破解? 请问有没有能破议QQ密码的软件? QQ被盗问题 链表长度