[kaffe] Java lang spec: private access
    Ito Kazumitsu 
    kaz at maczuka.gcd.org
       
    Tue May 16 09:20:37 PDT 2006
    
    
  
From: "Stuart Ballard" <stuart.a.ballard at gmail.com>
Date: Tue, 16 May 2006 10:08:36 -0400
> Because inner classes *are* within the body of the top level class, perhaps? :)
Yes, in the following example, the private member of the inner class is
accessible to the top level class.
public class ZZ {
  public class ZZ1 {
    private int a;
  }
  ZZ1 zz1;
  public ZZ() {
    zz1 = new ZZ1();
    zz1.a = 1;
  }
}
But the following cannot be compiled because "a" in type "ZZ$ZZ1" is
not accessible.  Isn't this an access from within the top level class?
public class ZZ {
  public class ZZ1 {
    private int a;
    public void foo() {}
  }
  ZZ1 zz1;
  public ZZ() {
    zz1 = new ZZ1() {
      public void foo() {
          a = 1;
      }
    };
  }
}
    
    
More information about the kaffe
mailing list