A-A+
类Test定义如下: public class Test{ public static vo
问题详情
类Test定义如下: public class Test{ public static void main(String args[]) { String sty=new String("abcde"); char ch[]={A,B,C,D,E}; ml(str,ch); System.out.print(str+","); System.out.println(ch); } public static void ml(String s,char ch[]) { s="Hello"; ch[3]=Z; } } 那么程序的执行结果为:【 】
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:abcdeABCZE
main()方法中的变量str中存放的是String对象"abcde"的内存空间引用,所以引用类型在进行参数传递时,是将引用拷贝给形式参数s。m1()方法中的s="Hello"会使s引用一个新的字符串,但是main()方法中的str还是引用着String对象"abcde"。所以打印结果应为abcde,ABCZE。