发布网友 发布时间:2022-05-15 08:44
共3个回答
热心网友 时间:2023-10-16 06:14
String() :初始化一个新创建的 String 对象,使其表示一个空字符序列。String(byte[] bytes):通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String。String(String original) :初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。::string 的构造函数有很多的。。具体的你可以参照Java SE 1.6 API。总之,String的构造函数是用来构造String字符串的。。不同的构造器构造不同的字符串热心网友 时间:2023-10-16 06:14
String s=new String("");String s="sfds";都可以热心网友 时间:2023-10-16 06:15
标准的new对象实例的写法:String s=new String("AAA");由于String类是声明为静态常量的 public static final String{ ....} 所以直接对字符串赋值时,其实是重新创建了一个新的String对象,然后把这个对象句柄关联到该对象上。例如:String s="AAA";s="BBB";第一行,程序在内存中创建了一个"AAA'的对象,并指定对象句柄s,这个s指向的就是"AAA"这个字符串对象。然后第二行是又重新创建了一个"BBB"对象(因为String类是声明为静态常量的,不可改变),然后把s这个句柄指向到了"BBB",其实原来的"AAA"来是存在的,只不过现在没有任何程序可以访问到它而已,而java的内存回收机制就会在一定的时间之后,自动回收那些没法访问到的对象的内存空间。