标签:rgs class system 学习 new color size str style
本来今天刚学习的内容,然后去其他博客看了下,发现都吵起来了,就是名字原因,有的说java有值传递和引用传递,有的说引用传递本质就是值传递,我管你杂说的,只要自己理解好,代码知道运行结果就好了。
我用自己的话,自己的理解来解释下,反正都是自己写着玩,自己看的
值传递:传递的值,这个值以后怎么改变,源值不会发生改变的。
引用传递:将对象的引用地址传递过去,如果值发生改变,那么源值也发生改变。
代码如下:
值传递:
public class Test1 {
    public static void main(String[] args) {        
        int a=1;
        fun(a);
        System.out.println("main中的值"+a);
    }
    public static void fun(int a){
        a=2;
        System.out.println("fun中的值"+a);
    }
}
console结果:
fun中的值2
main中的值1
引用传递:
class Demo1{
    private String msg="hello";
    public Demo1(String msg) {        
        this.msg = msg;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }    
}
public class Test2 {
    public static void main(String[] args) {
        Demo1 demo=new Demo1("world");
        fun(demo);
        System.out.println(demo.getMsg());
    }
    public static void fun(Demo1 demo){
        demo.setMsg("hi");
    }
}
console结果:hi
标签:rgs class system 学习 new color size str style
原文地址:http://www.cnblogs.com/lbloveab/p/7242108.html