居然说可以,理由:属于同一类的两个对象之间可以相互访问私有成员变量。
说实话,这个问题我都不能很好的理解。

解决方案 »

  1.   

    当然可以啊。
    PRIVATE 是在类的层次保护的不是对象层次上保护的。C++也是一样。
    如:
    class P
    {
      private int x;
      public void setX(P p)
      {
         p.x=this.x+2;//这个就是this这个对象访问修改p这个对象的private型的int x变量。
      }}
      

  2.   


    不是不可以 不过这里强调下 是这个样子地~
    public class LzCode {
    private String privateStringObject; public void getLzCodeString(LzCode lzCode) {
    this.privateStringObject = lzCode.privateStringObject;
    }
    }
      

  3.   

    难道不是吗?
    如:P p1=new P(),p2=new P();
    p1.setX(p2);//p1修改了p2中private的x的值。你认为才是?
      

  4.   

    lz的意思是直接用p1.x(这里的x是p2的)这样的意思吧?
    如果这样的话是不行的
    但是像3楼那样“间接”的使用的话还是可以的。
      

  5.   

    不能直接访问,只能间接访问,比如通过public的方法。
      

  6.   


        public class Test{
        private TestA a;
        private TestB b;
    }
        class TestA{
        private String t1;
    }
        class TestB{
        private String t2;
    }你的意思是a可以访问 t2????
      

  7.   

    可以的,刚查过thinking in java了
      

  8.   

    我觉得这个问题转成语文的问题更好
    别说私有了 就是公有的 你访问给我看看 a就是a的 b就是b的 你在A里面访问b 那是A访问的不是a访问的
      

  9.   

    我觉得这个只是p1访问了setX 
      

  10.   

    靠搞不懂,private是正对类来讲的,干嘛在对象上纠结,只要在本类的作用域范围内就可以访问。要问为什么就要问些Java的作者了。
      

  11.   

    private 的意思说的很明白,本类中才能访问啊!!!