package test;
publicclassst {publicstaticvoidmain(String[] args) {
// TODO Auto-generated method stub
String mainstring1 = null;
reftest1(mainstring1);
System.out.println("mainstring1:" + mainstring1);
String mainstring2 = null;
mainstring2 = reftest2();
System.out.println("mainstring2:" + mainstring2);
String mainstring3[] = new String[1];
System.out.println("mainstring3[0]:" + mainstring3[0]);
reftest3(mainstring3);
System.out.println("mainstring3[0]:" + mainstring3[0]);
}
publicstaticvoidreftest1(String temp) {
System.out.println("reftest1 before new:" + temp);
temp = new String("Just_Do_IT_Ye at 优快云");
System.out.println("reftest1 after new:" + temp);
}
publicstatic String reftest2() {
String temp = new String("Just_Do_IT_Ye at 优快云");
System.out.println("reftest2 after new:" + temp);
return temp;
}
publicstaticvoidreftest3(String temp[]) {
temp[0] = new String("Just_Do_IT_Ye at 优快云");
System.out.println("reftest3 after new:" + temp[0]);
}
}
输出如下:
reftest1 before new:null
reftest1 after new:Just_Do_IT_Ye at 优快云
mainstring1:null
reftest2 after new:Just_Do_IT_Ye at 优快云
mainstring2:Just_Do_IT_Ye at 优快云
mainstring3[0]:null
reftest3 after new:Just_Do_IT_Ye at 优快云
mainstring3[0]:Just_Do_IT_Ye at 优快云
综上,可以知道主要有两种方法来获取子方法的新建实例引用,分别是通过方法的返回和建立实参数组。