3、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?

解决方案 »

  1.   

    看看,真是经久不衰的话题
    http://topic.csdn.net/t/20060605/13/4801113.html
      

  2.   

    Java是值传递的,且只有值传递...
      

  3.   

    Student类中有两个字段 name age
    构造方法 
    public Student(String name,int age)
    {
        this.name=name;
        this.age=age;
    }
    有个方法  改变字段的值的方法
    public void change(Stundent s1)
    {
        s1.name="ls"
    }测试类 Test
    Student s=new Student("zs",18);
    s.change(s);
    调用方法,此时将对象的一个引用(假设12ff7c)传过去
    Student s1 在栈区开辟一空间 取名为s1  里面放的值为12ff7c
    通过12ff7c  s和s1都指向了堆区中的name 和age
    所以可以改属性了