考虑下面的课程
public class Player {
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
假设同一个包中有另一个类
public class Sample {
Player p1 = new Player();
Player p2 = new Player();
Player p3 = new Player();
Player p4 = new Player();
//p1.
}
在这个类中访问方法 p1.setId(int) 是不可能的,除非它在另一个方法中被调用
public class Sample {
Player p1 = new Player();
Player p2 = new Player();
Player p3 = new Player();
Player p4 = new Player();
void example () {
int x;
p1.setId(x);
}
}
内部示例 p1.setId() 是可能的。我知道java只允许在另一个方法中访问方法。所以它更安全。但我想澄清一下为什么会有这样的限制,以及这个限制显示了什么概念数据抽象或封装。提前致谢 。