String s1 = new String("abc"); 这句代码会创建多少个字符串对象?

String s1 = new String("abc"); 这句代码会创建多少个字符串对象?

答案是创建 一个或者两个

创建一个的情况:字符串常量池中已经存在字符串abc,就不再需要在这里创建了,直接在堆中创建对象

创建两个的情况:字符串常量池中不存在字符串abc,就需要在字符串常量池和堆中都创建对象

posted @ 2021-11-11 19:02  码农Amg  阅读(70)  评论(0编辑  收藏  举报