除了包含该成员的类以外,任何其他类都无法访问这个成员。
这等于说是隔离了自己,从另一方面说,共同合作创建一个包也是不大可能的。
这也就是private的作用,允许你随意改变该成员,而不必考虑这样做是否会影响到包内的其他类。在多线程环境下,private的作用更加被凸显。
class sundae{
private Sundae(){}
static Sundae makeASundae(){
return new Sundae();
}
}
Private可以控制如何创建对象,在上面的例子中,不能通过构造器来创建Sundae对象,而必须调用makeASundae来创建对象。
任何可以肯定只是该类的一个“助手的方法”,可以通过Private来确保你不会在包的其他地方误用到它,也就防止了你会去改变或者删除这个方法。将方法制定为Private可以确保你拥有这种选择权。