当前位置: 首页 > news >正文

匿名对象和一般对象的区别

1.格式的不同

一般对象的格式: ​ Object obj = new Object(); ​ 匿名对象的格式: ​ new Object();

2.作为参数传递机制的不同

2.1先看看一般对象的使用机制

 执行步骤:

1.首先程序进入main()函数,执行Object obj,创建obj对象

2.执行new Object();到内存分配地址并创建对象实例,将地址返还给obj

3.执行function(obj);将main函数中创建的obj对象实例地址赋值给function()参数的obj

4.function()的obj对象也指向内存中对象实例(箭头忘画出来了) 注意:传参结束后,函数参数所创建的对象就变成了内存垃圾了。

2.2匿名函数的传参原理

 执行步骤:

1.程序进入main()函数;

2.执行function(new Object());首先在内存申请地址,创建对象实例;

3.进入function()函数体,将new Object()申请到的地址赋值给obj,相当于 Object obj = new Object();使function的obj对象指向内存中的对象。

3.使用匿名对象的相关事项

优点: 简化书写、提高效率。

使用条件:

1.当对象只调用一次时。(当同一个对象进行多个成员调用时需要为对象起名字在调用)

2.可以将匿名内部类作为实际参数进行传递

注意:

1.匿名对象使用的条件只能用于当对象一次调用时,如果要多次调用同一个对象的成员,需要为对象起名。

2.匿名对象,每次创建都会申请一个独立的内存空间,并且之前创建的匿名对象会销毁。

http://www.lryc.cn/news/143523.html

相关文章:

  • [MyBatis系列⑥]注解开发
  • [ACL2023] Exploring Lottery Prompts for Pre-trained Language Models
  • 【Python编程】将同一种图片分类到同一文件夹下,并且将其分类的路径信息写成txt文件进行保存
  • 单例模式的相关知识
  • vue问题相关记录
  • skywalking服务部署
  • 【uni-app】压缩图片并添加水印
  • 《每天十分钟》-红宝书第4版-变量、作用域与内存
  • NFTScan | 08.21~08.27 NFT 市场热点汇总
  • 【Java 中级】一文精通 Spring MVC - 数据验证(七)
  • css奇数偶数选择器
  • 【算法】双指针求解盛最多水的容器
  • 浅析SAS协议:设备接入与探测
  • RISC-V IOPMP实际用例-Andes SoC‘s Rapid-k模型
  • 【高阶数据结构】哈希表详解
  • C#与西门子PLC1500的ModbusTcp服务器通信4--搭建ModbusTcp客户端
  • 性能调优篇 二、Jvm监控及诊断工具-命令行篇
  • Fooocus启动时modules报错的解决方法
  • RSA私钥解密操作
  • 数据库基本知识
  • 使用Redis统计网站的UV/DAU
  • 【python】报错:ImportError: DLL load failed: 找不到指定的模块 的详细解决办法
  • SemrushBot蜘蛛爬虫屏蔽方式
  • 6 ssh面密登录
  • 基于微信小程序的汽车租赁系统的设计与实现ljx7y
  • 优化学习体验的在线考试系统
  • 1267. 统计参与通信的服务器
  • 【考研数学】矩阵、向量与线性方程组解的关系梳理与讨论
  • 打造个人的NAS云存储-通过Nextcloud搭建私有云盘实现公网远程访问
  • FFI绕过disable_functions