Java提供了访问权限修饰词,以供类库开发人员向客户端程序员指明哪些是可用的,哪些是不可用的。访问控制权限的等级,从最大权限到最小权限依次为:
public、protected、包访问控制权限(没有关键词)和private
pubic:接口访问权限
使用关键字public,就意味着public之后紧跟着的成员声明自己对每个人都是可用的,尤其是使用类库的客户端程序员更是如此。
protected: 继承访问权限
包访问权限
默认访问权限没有任何关键字,但通常是指包访问权限(有时也表示成friendly)。这就意味着当前包中的所有其他类对那个成员都有访问权限,但对于这个包之外的所有类,这个成员却是private。由于一个编译单元(即一个文件),只能隶属于一个包,所以经由包访问权限,处于同一个编译单元中的所有类彼此之间都是自动可访问的。
private:你无法访问
关键字private的意思是,除了包含该成员的类之外,其他任何类都无法访问这个成员。由于处于同一包内的其他类是不可以访问private成员的,因此这等于说是自己隔离了自己。从另一方面说,让许多人共同合作来创建一个包也是不大可能的,为此private就允许你随意改变该成员,而不必考虑这样做是否会影响到包内其他的类。