举个例子,
public class SwapNumbers {
private int aNumber = 0; ///////////////////////////////////
public SwapNumbers(){
}
public void changeNumber(int changed){
aNumber = changed;
}
public void swap(SwapNumbers otherNumber){ ///////////
aNumber = otherNumber.aNumber; //Can we access aNumber?
}
}
交换这项工作会不会?我的第一直觉是它不起作用,因为它试图访问私有值。
答案 0 :(得分:4)
是。创建成员private
意味着它可以与当前类及其任何内部类一起使用,但受静态限定符的限制。
Package-private(或默认值,不带任何访问修饰符)表示它可用于同一个包中的任何类。
public
修饰符使其可用于任何包中的任何类。小心这些:)
答案 1 :(得分:0)
如果您在同一个班级中,则访问班级中的任何变量(私人,受保护或公开)都没有问题。
您将无法从外部访问私人变量
public class SwapNumber {
...
}