在看书和阅读他人代码的时候经常会看到类、方法等把访问权限略写掉,对于初学者来说有时候就会很混乱。这里稍微总结一下
1、类中的方法:
不加任何访问权限限定的成员采用的是默认的访问权限。称为default或package。default权限意味着可以被这个类本身和同一个包的类访问。在其他包中定义的类,即使是这个类的子类,也不能直接访问这些成员。这种访问权限相当于把同一个包中的类作为可信的朋友。对于构造方法,如果不加任何访问权限也是default访问权限,则除了这个类本身和同一个包中的类之外,其他类不能生成该类的实例
2、类
类的默认访问权限是包级的(如果声明为public则所有类都可以访问)。所谓的访问就是可以实例化该类。
说明:
a)每个编译单元(类文件)都仅能有一个public class
b)public class的名称(包含大小写)必须和其类文件同名。
c)一个类文件(*.java)中可以不存在public class。
这种形式的存在的场景:如果我们在某个包内撰写一个class,仅仅是为了配合同包内的其他类工作,而且我们不想再为了撰写说明文档给客户(不一定是现实意 义的客户,可能是调用这个类的类)看而伤脑筋,而且有可能过一段时间之后 有可能会彻底改变原有的做法,并完全舍弃旧版本,以全新的版本代替。