访问权限的等级,从最大到最小依次为:public,protected,包访问权限(没有关键词),private。
6.1 包:库单元
一个Java源文件称为一个编译单元,其中有且只有一个public类,该类名称必须与文件名称相同。之外的类在包之外的地方是无法看到的。
6.1.1 代码组织
Java可执行程序是一组可以打包并压缩为Jar文档文件的.class文件。Java解释器负责这些文件的查找,装载和解释。
package语句必须是文件的第一句代码。
6.1.2 创建包名
package名称第一部分是反顺序的Internet域名。分解为目录层次
Java解释器运行过程如下:1)找到环境变量classpath,作为查找.class文件的根目录。
2)从根目录开始,将包名每个句点替换成反斜杠,从而产生路径。
3)然后根据路径查找.class文件。
6.1.3 定制自己的工具库
主要使用函数重载的方法。
6.2 Java访问权限修饰符
不写修饰符,即“包访问权限”,所以所有Java事物都有某种形式的访问权限控制。
6.2.1 包访问权限
6.2.2 public:接口访问权限
默认包:没有为.java文件指定包名,则属于默认包,默认包下的文件互相都有包访问权限。
6.2.3 private:无法访问
6.2.4 protected:继承访问权限
6.3 接口和实现
把数据和方法包装进类中,以及具体实现的隐藏,被称作封装。按public,protected,包访问权限,private顺序书写。
6.4 类的访问权限
只有两个选择:包访问权限或public。当为包访问权限时,即使在包外把包引入,也无法使用该类。
若不希望任何人对该类进行访问,可以把所有构造器都指定为private,从而阻止任何人创建该类的对象(编译通不过)。注意:至少要把默认构造函数覆盖掉,不然其默认为public。