在 java 中,声明访问权限的关键字有三个,分别是 public protected private。
一个 class 如果不能被其他 class 调用,那它就没有存在的必要。在 java 中 ,声明一个 class 为 protected 或 private 会导致这个 class 成为一个孤岛无法和外部取得联系,因此 protected 和 private 是不能用来修饰 class 的。
那么就只剩下 public 了。正如 public 的中义(公开的)所指,被 public 声明的 class 能被其他 class 自由的访问。所以绝对大部分时候,你都需要把 一个 class 声明为 public。
人总是会犯错的,有时忘记写 public ,这时你会发现程序依旧正常运行。那么什么时候忘记写 public 会出错呢?当被访问的 class(Person) 与 访问者 class 不同属于一个 package 时,如果被访问的 class 没有声明为 public ,程序将报错,错误信息为:
错误: Person在net.saqing中不是公共的; 无法从外部程序包中对其进行访问
总结
对 class 的访问控制有两种方式,一种是声明 class 为 public ,另一种是不声明为 public.
with public , 该 class 可以自由的被访问
without public, 该 class 只可以被同一个 package 中的 其他 class 访问