String s=new String("abc")产生了几个对象?[权威面试版]
以下总结是我逛论坛 将零零碎碎的知识整理起来,方便自己记忆和阅读,顺便分享出来给大家学习。
若 String s=new String("abc"); 为第一句代码
则会产生两个对象
一个在对象池中
一个在堆中
若 String s=new String("abc"); 或 String s = "abc"; 出现过
则只产生一个对象
此对象在堆中
管他几个,记住两点:
1、面试遇到了,答2个。顺便鄙视该公司,99.99出题人自己也不知道jvm究竟搞出几个对象。2、做字符串连接用StringBuffer,少用+。
看完本章节觉得对自己都帮助的,写个评论顶顶