`

有趣的java程序

阅读更多
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author Administrator
 */
public class Test {
    public static void main(String[] args){
        String str = "111";
        changeStr(str);
        System.out.println("print out:" + str);
        //System.out.println(changeStr(str));语法错

        String str2 = "234";
        str2 = "345";
        System.out.println("print out str2:" + str2);

        String str3 = "234";
        str3 = "345";
        changeStr(str3);
        System.out.println("print out str3:" + str3);
    }
    public static void changeStr(String str){
        str = "234";
    }
}

run:
print out:111
print out str2:345
print out str3:345
成功生成(总时间:0 秒)

 自己想出一种解释:
1.changeStr里的str=“234”是这个方法的参数的引用
跟main方法里的str不是同一个引用对象

2.如果有return ,程序就把changeStr的str引用对象值付给main的str
因为changeStr里的参数名完全可以不用str也行的,这里只不过同名了
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics