美文网首页
String a = "123"创建了几个对象?

String a = "123"创建了几个对象?

作者: 愿夜有烛 | 来源:发表于2022-06-07 16:35 被阅读0次

    昨晚群友分享了个问题,感觉挺有意思,分享下

    问题

    先说答案,是A,3个。

    分析如下:

     int a :int是八种基本数据类型,存储在栈中,所以不算新建对象了。

    String b: 算是一个,创建的对象放入堆中的常量池了。

    String c:引用b之前在常量池中创建过的内容了,不算是新建了对象

    String[] d: 创建了两个对象,因为“welcome to casic”之前在常量池中创建过了,无需再次创建

    那么String a = new String("123");是创建了几个对象呢?

    答:2个,一个new string()对象存储在堆中,一个“123”存储在常量池中。

    相关文章

      网友评论

          本文标题:String a = "123"创建了几个对象?

          本文链接:https://www.haomeiwen.com/subject/bbyemrtx.html