对象变量保留对对象的引用,而不是对象

博客总结了Java非基本类型变量保留对象引用的原理,指出声明对象变量不创建对象,“==”比较的是指针而非内容,所以通常要定义equals()方法。还提到对象引用副本入栈、类实例可作字段以及引用变量操作指针等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        下面总结了蕴含的Java原理,即非基本类型的变量保留对对象的引用,说明它们保留了对象的地址。

        ●声明一个对象变量并没有创建相应的对象。

        ●利用“==”运算符比较两个对象变量,实际上只是比较变量中保留的指针,而不是对象的内容。因此,通常应定义一个用于比较的equals()方法

        ●作为参数传递的对象引用的副本将压入堆栈中,原始对象中的字段因而可以被方法改变或更新,但不能让原始引用指向一个不同的对象。

        ●易于声明一个类,其中类本身的实例又作为他的字段。例如,一个链接表包含另一个链接表,一个二叉树包含两个子二叉树。如果声明一个字段Foo,它将是一个对Foo的引用。

        ●因为一个引用变量可以自动撤销引用,以得到对象中字段的内容,因此,很容易看出是对指针进行赋值和 比较而不是对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值