因为你就是在自己的TestAccess类当中,你访问TestAccess的x是被允许的,无论这个t是自己本身还是另外一个TestAccess实例

解决方案 »

  1.   

    首先要注意private的用法.
    private只能在定义该类的内部使用,所以该类的其它成员都可以使用该private变量,但是在该类外部就不能使用了.
      

  2.   

    因为x在estAccess这个类中,在同一个类中当然可以使用了!
      

  3.   

    zhutouzip(吃青春饭不肖子!) 的说法很对
      

  4.   

    在类的成员函数中可以直接使用类的私有数据成员。
    add是TestAccess的成员函数。
    像下面的例子才是错的:
    public class Test{
    public static void main(String[] args) 
             {
             int temp;
    TestAccess a = new TestAccess(1);
                       temp = a.x; //错误访问私有成员。
    }
    }
    本人刚学java请大家多多执教!
      

  5.   

    私有成员在类内部是是可以使用的。如果类外使用某的对象的私有成员,在C++中可以通过友元来实现,java中我还不知道有没有友元的概念,但是这样会破坏封装性,并不好。