|
JAVA程序员必读:基础篇(5)---类和继承
|
|
编译:ZSC/太平洋网络学院
|
|
|
5.1.6 控制对类成员的访问
(2)Protected
protected允许类本身、子类以及在相同包中的类访问这个成员。在允许类的子类访问而杜绝其它不相关的类的访问的时候,可以使用protected访问等级。Protected成员就象家庭秘密,家里人知道无所谓,但是就不让外人知道,不是有“家臭不可外扬”一说吗?,虽然这里不是什么“家臭”,但它是受protected的成员。
为了声明一个protected成员,使用关键字protected。首先,让我们看看protected是怎样影响在相同包内的类的。假如上面的那个Alpha类现在被定义在一个(package)包Greek内,它有一个protected成员变量和一个protected方法:
package Greek;
public class Alpha {
protected int iamprotected;
protected void protectedMethod() {
System.out.println("protectedMethod");
}
}
现在,假设类Gamma也声明为Greek包的一个成员(不是Alpha的子类)。Gamma类可以合法访问Alpha对象的iamprotected成员变量并且可以合法调用它的protectedMethod:
package Greek;
class Gamma {
void accessMethod() {
Alpha a = new Alpha();
a.iamprotected = 10; // 合法
a.protectedMethod(); // 合法
}
}
[上一页]
[下一页]
|