如:
String s=new String("Test");
String s1=s;//s1就是s的引用.

解决方案 »

  1.   

    补充:
    如:
    String s=new String("Test");
    String s1=s;//s1就是s的引用.s1与s指向同一对象,如果s的内容发生变化,s1也会发生变化
      

  2.   

    多谢各位了。
    但如果是“操作某个对象时,你所操作的其实是他的引用”,那么
          ClassName c=new ClassName();     //1
          c.Method();                      //2
    那2里的c是对象呢,还是对象的引用呢?
      

  3.   

    to: nanye18(木吉他)
    -----------------------------
    如:
    String s=new String("Test");
    String s1=s;//s1就是s的引用.
    -----------------------------s1不是s的引用。这里s和s1都是 new String("Test") 生成对象的引用。 to: bzw2002(David) 
    ------------------------------
    多谢各位了。
    但如果是“操作某个对象时,你所操作的其实是他的引用”,那么
          ClassName c=new ClassName();     //1
          c.Method();                      //2
    那2里的c是对象呢,还是对象的引用呢?-------------------------------
    2里的c是引用。 在java里,如果要想对一个对象进行操作,只能操作指向这个对象的引用。
    传参数的时候也是传递的引用,不是对象本身。 所以你的第一个问题
    "不知道传递一个对象和传递一个对象的引用有什么区别?" 的回答是一般情况下传递的都是引用,没有传递对象的情况,所以问题本身不成立。第二个问题因为第一个问题不成立而自然也不成立了。 
      

  4.   

    在java里面,是没有指针的(程序员是不需要处理指针问题的,尽管内核机制是 指针),这是java傲人的优点之一,但是,实际上在学习对象引用的时候,完全按照指针来理解。
    java的数据类型分为两类:基本数据类型,引用类型,现分类说明:
    int i=0;
    A a=new A();
    这两条语句有什么不同,又有什么相似?
    对比理解不难发现,等号左边,声明的是变量,右边是“值”,不管是1,2,3还是一个内存地址,等号是赋值具体的就不用我细说了吧看:
    String  s1="123456";   | int i=1223;
    String s2;             | int j;
    s2=s1;                 | j=i;
    s1="adfadfa"           | i=456;
    s2=?                   | j=?可以看出,对于引用类型的变量,给的实际上是一个“指向”或者说“内存地址”....
      

  5.   

    既是对象 也是引用  -记住 在java中 对象就是一个引用                                                   如有不同意见 请指教
      

  6.   

    楼上: 对象就是引用,引用就是对象。我可不同意。虽然在java中你只能通过一个引用来操作对象,但说引用就是对象,对象就是引用那就是在概念上的不清了。