第六章、访问权限控制
6.1 Java解释器的运行过程:
首先,找出环境变量CLASSPATH,用作查找.class文件的根目录。
然后,从根目录开始,解释器获取包的名称并将句点替换成反斜杠(于是,package net.mrliuli.training 就变为 net\mrliuli\training 或 net/mrluli/training 或其他,这一切取决于操作系统)以从CLASSPATH根中获取一个相对路径。
将CLASSPATH根目录与上面获取的相对路径相连接得到一个绝对路径,用来查找.class文件。
6.2 类的访问权限的一些限制
a. 同一个.java文件,只能有一个与文件同名的public类,可以有其它非public类;
b. 同一个package内的不同文件中的类,可以互相访问。
c. 不同package中的类,如需访问,需要使用全限定名,如biz.superalloy.MyClass或通过import把biz.superalloy包引进来;
d. 类中的成员变量,不声明访问修饰符时,为“包访问权限”,同一个文件的不同类之间可以互相访问。
e. 如果没能为类访问权限指定一个访问修饰符,它将会默认得到包访问权限。
6.3 访问权限类型:
public(公开权限):class&method&field 均可用;
protected(继承权限):class不可用,成员(method&field)可以用;
包访问权限(缺省权限):class&method&field 均可用;
private(私有):class不可用,成员(method&field)可以用;
网友评论