100-匿名对象介绍&匿名对象的特点

点击查看视频讲解

 

1

2

3

4

5

class Person{

  

}

  

Person p = new Person();

对象的数据,都保存在堆内存中对象空间里面;我们对对象的属性的操作,都是对堆内存中对象空间里面的数据的操作,所以要操作他们,必须先找到这块空间,

所以必须要通过保存了对象空间的引用地址的变量来操作对象;所以保存了对象的引用地址的变量,就成为这个对象的名字。

 

对象的名字:指的就是保存了对象的内存地址的变量;

 

匿名对象:就是使用new关键字创建出来的对象,不赋值给任何的引用变量,这个对象称为匿名对象。

匿名对象的使用:

因为匿名对象的内存地址没有任何变量保存,所以不能通过任何其他变量来访问这个对象,所以只能在对象创建出来的时候使用一次;

(也就是说,匿名对象是一次性的对象)

 

匿名对象应用:

如果在程序中,某个对象仅仅只使用一次,这时可以采用匿名对象方式来创建这个对象。一个对象如果要被使用多次(最少2次),这时一定要使用引用变量作为对象的名称。通过引用变量操作当前这个对象。

结论:匿名对象只能在创建它的这一行代码执行结束之前使用;当这行代码执行完毕,因为没有别的引用变量保存它的内存地址,所以就成为垃圾空间等待回收;

匿名对象 只能在创建它的这行代码中使用一次;

匿名对象的使用场景:

如果某个对象只需要使用一次,为了避免出现内存浪费,就可以使用匿名对象;

 

匿名对象产生的问题:

由于匿名对象是没有名称的,因此当匿名对象所在的代码执行完成,这个对象立刻变成垃圾(一个对象如果没有任何引用指向它,这个对象就是垃圾)。等待垃圾回收器收走。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值