zoukankan      html  css  js  c++  java
  • dui xiang yin yong

    public class Test {
    private String name;
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }

    public Test() {
    }

    public void call(Test t1,Test t2) {
    System.out.println("t1地址1="+t1);
    Test t3 = new Test();
    t1.setName("aaa");
    t2.setName("bbb");
    t3.setName("ccc");
    System.out.println(t1.getName());//aaa
    System.out.println(t2.getName());//bbb
    t1=t2;
    System.out.println(t1.getName());//bbb
    t1=t3;
    System.out.println(t1.getName());//ccc
    System.out.println(t3.getName());//ccc
    t3.setName("eeee");
    System.out.println("t1地址2="+t1);
    }

    public static void main(String[] arg) {
    Test t1 = new Test();
    Test t2 = new Test();
    System.out.println("t1地址0="+t1);
    Test t4=new Test();
    t4.call(t1,t2);
    System.out.println("t1地址3="+t1);
    System.out.println("t1=" + t1.getName());//aaa???
    System.out.println("t2=" + t2.getName());//bbb????
    }
    /////////////////////////////////理解,以前理解的很好,现在又生疏了。再次重新理解。

    在对象作为参数的时候,传入的不是对象,也不是对象的地址,而是对象地址的引用(拷贝了一份地址指针)。
    所以在以对象为参数的方法中对象(赋值)=的时候,改变的只是地址引用的指针,而真正的对象的地址没有改变。


  • 相关阅读:
    js中json对象取键和值
    canvas基本图形
    JavaScript数组实战小练习
    以面试为提纲的前端知识
    用js写三级联动
    JavaScript读取本地json文件
    用jquery写的json省市县三级联动下拉
    纯CSS实现3D按钮效果
    纯CSS仿windows系统loading效果
    一个有意思的标签<marquee>
  • 原文地址:https://www.cnblogs.com/cmdl/p/3094378.html
Copyright © 2011-2022 走看看