第五章 隐藏实施过程
包:库单元
- 每个编译单元(一个.java文件)内部只能有一个public类,对于.java文件中的每个类都有一个.class扩展名。一个有效程序就是一系列.class文件,他们可以封装压缩到一个JAR文件里
- package 语句必须作为文件的第一个非注释语句出现,作用是指出这个编译单元属于名为某个库的一部
- package 和 import 关键字分割单个全局命名空间,保证不会产生名字的冲突
- Java 解释器的工作程序:找到环境变量CLASSPATH,从这里展开对.class 文件的搜索,生成从 CLASSPATH 根开始的一个路径名,成为CLASSPATH 内的各个条目(入口)
Java访问指示符
- Java中每个访问指示符都只控制着对那个特定定义的访问,这与C++存在着显著不同,在C++中,访问指示符控制着它后面的所有定义,直到又一个访问指示符加入为止
- 无修饰符,即默认为friendly,相同包内的类可以访问,子类不在同一包中时不可以访问。当某个文件没有明确的包名时,Java会将其看做“默认包”的一部分,该文件对于所在目录中的其他文件来说是friendly
- public为对所有类开放访问;private仅能被当前类的方法访问;protected可以被同一包中的类以及所有子类(即使子类不在同一包中)访问