- 1
- 0
- 约3.85千字
- 约 6页
- 2026-09-21 发布于河北
- 举报
String高频面试题及详细答案(实战版)
1、String是什么?有什么核心特性?
答案:
String是Java中表示字符串的类,属于引用类型,位于java.lang包下。
核心特性主要有三点:
1.不可变性:字符串一旦创建,内容就不能被修改。我们平时做的拼接、替换等操作,都不是修改原字符串,而是生成一个全新的字符串对象。
2.常量池缓存:字面量方式创建的字符串,会优先存入字符串常量池复用,减少重复对象创建,节省内存。
3.线程安全:因为内容不可修改,多线程同时读取不会出现数据竞争问题,天然线程安全。
补充:JDK9之前String底层用char[]存储字符,JDK9及之后改用byte[]存储,根据字符编码自动适配,进一步节省内存。
2、为什么String是不可变的?底层怎么保证的?
答案:
从底层源码层面,有三层保障:
1.类被final修饰:String类是final类,不能被继承,避免子类重写方法破坏不可变性。
2.存储数组被final修饰:底层存储字符的数组(char[]/byte[])是privatefinal修饰,数组引用地址不可修改,无法指向新数组。
3.无对外修改方法:String没有提供任何可以直接修改底层数组的公开方法,所有增删改操作都是新建对象。
很多人会误以为final修饰数组就不
您可能关注的文档
最近下载
- 经线和经度课件七年级地理上册人教版.pptx
- IATF16949:2016标准(中文)-完整版.pdf VIP
- 湘教版(2024)新教材八年级地理下册第七章第三节《粤港澳大湾区的内外联系》课件.pptx
- 《朝花夕拾》读书汇报会PPT.pptx VIP
- 建筑给排水套管预埋隐蔽资料(档案馆标准).docx
- 【地理】 粤港澳大湾区的内外联系 课件2025-2026学年湘教版地理八年级下册.pptx VIP
- 7.3《粤港澳大湾区的内外联系》课件_湘教版地理八年级下册.pptx VIP
- 2026半导体工艺工程师校招试题及答案.doc VIP
- 马工程-中国古代文学史(第二版)中册第六编辽西文学全套PPT课件50109.pptx
- 半导体工艺岗笔试题目及答案.doc VIP
原创力文档

文档评论(0)