关于访问私有成员变量

时间:2013-02-17 05:49:51

标签: java

我正在阅读一篇关于私有访问说明符的文章,何时使用私有以及它在以下网址Regarding private access specifier

的封装方面提供了哪些好处?

但是有一件事在本文中关于访问类外部的私有变量尚不清楚。虽然私有方法或变量在类之外是不可访问的,但是可以通过使用setAccessible(true)和改变私人知名度。

你能不能给我一个小例子,这样我也可以在技术上理解。

1 个答案:

答案 0 :(得分:0)

类的“私有”成员只能在程序中访问,并且也可以使用自己的对象访问。即使是同一个包中的继承类也无法通过组合访问。观察代码。私有变量可以从相同的类方法访问。

class Test
{
private int x = 10;
public void display()
{
       System.out.println(x);
}
}
public class Demo extends Test
{
public static void main(String args[])
{
   Demo d1 = new Demo();
   System.out.println(d1.x);   // error

   Test t1 = new Test();
   System.out.println(t1.x);   // error , it is composition (has-a relationship)     
   t1.display();                       // this works
}
}

我在网上搜索了这个答案。我在way2java.com的主题Public methods and Private Variables

中找到了