读书人

有关protected访问权限的有关问题

发布时间: 2011-12-02 23:47:57 作者: rapoo

有关protected访问权限的问题
package first;

public class TestQ {
public int a ;
protected int b;
}


package second;
import first.TestQ;

public class TestQ1 extends TestQ{
TestQ test = new TestQ();
int a1 = a;
int b1 = b;//int b1 = test.b;
}

为什么注释中的代码(通过父类对象来访问父类的protected属性)不可以,而直接访问就可以?

[解决办法]
我只知道protected 是不同包的非子类不可见 其他不知
[解决办法]
protected 不能通过类对象直接访问
[解决办法]
楼上正解,就像是private一样,只能是方法互相访问,但是除了super.()除外哦
[解决办法]
Java 是这样规定的,无条件接受
[解决办法]
protected不能跨包访问,改为同一个包就对了。
[解决办法]
数据field private
[解决办法]
Protected关键字声明的变量,不同包的类是不能访问的.
[解决办法]
zzwh_0() 举的那个例子,两个类在同一个包下(都是缺省包).
所以还是满足:
Protected声明的变量不同包的类对象不能访问的
~~~

[解决办法]
同一包下,通过类名直接可以访问的成员变量和成员方法 要用 static 修饰.

读书人网 >J2SE开发

热点推荐