【发布时间】:2010-10-15 04:25:51
【问题描述】:
是类级别还是对象级别的私有成员访问。如果是在对象级别,那么下面的代码不应该编译
class PrivateMember {
private int i;
public PrivateMember() {
i = 2;
}
public void printI() {
System.out.println("i is: "+i);
}
public void messWithI(PrivateMember t) {
t.i *= 2;
}
public static void main (String args[]) {
PrivateMember sub = new PrivateMember();
PrivateMember obj = new PrivateMember();
obj.printI();
sub.messWithI(obj);
obj.printI();
}
}
请说明在 sub 的 messWithI() 方法中访问 obj 的成员 i 是否有效
【问题讨论】:
标签: java accessibility private-members