在此创建了多少个对象

时间:2014-11-11 12:31:54

标签: java oop

在这个类中,将创建多少个字符串对象?

public class B {

    public static void main(String[] args) {
        String string = new String("abc");
        String s = "def";
        s = s + "fgh";
    }
}

1 个答案:

答案 0 :(得分:0)

如果您询问创建了多少 String 对象,那么答案就是5个String对象。

String string = new String("abc"); // 2 Strings with value "abc" , one on heao and another in String constants pool
String s = "def"; // String "def" on String constants pool
s = s + "fgh"; // String "deffgh" on heap and "fgh" on String pool

许多对象都是在内部创建的,例如StringBuilderarrays等,您现在不应该考虑这些对象。