亦余心之所善兮,虽九死其犹未悔。这篇文章主要讲述面试经验|常见的字符串常量池必问面试题相关的知识,希望能为你提供帮助。
面试题:
String str4 = new String(“abc”) 创建多少个对象?
- 在常量池中查找是否有“abc”对象 有则返回对应的引用实例 没有则在常量池中创建对应的实例对象
- 在堆中 new 一个 String(“abc”) 对象
- 将对象地址赋值给str4,创建一个引用 所以,常量池中没有“abc”字面量则创建两个对象,否则创建一个对象,以及创建一个引用 根据字面量,
- str1:
- 字符串常量池:“A”,“B”,“AB” : 3个
- 堆:new String(“AB”) :1个
- 引用: str1 :1个
- 总共 : 5个
- str2 :
- 字符串常量池:“ABC” : 1个
- 堆:new String(“ABC”) :1个
- 引用: str2 :1个
- 总共 : 3个
推荐阅读
- 全国超10亿用户!AntDB数据库的电信核心交易替换之路
- 分布式|redis管道是什么鬼()
- 浮动静态路由
- Kettle实现ES到ES循环增量抽取
- SpringSession的源码解析(生成session,保存session,写入cookie全流程分析)
- 面试官灵魂三问(什么是SOA(什么是微服务?SOA和微服务有什么区别?))
- 多线程基本概念(并发与并行线程与进程)和入门案例
- 最简单的通用Mapper的使用手册不了解一下()
- Veeam Backup Configuration Tool