JavaSE笔记之<访问权限控制深入>

来源:互联网 发布:淘宝店铺中差评的修改 编辑:程序博客网 时间:2024/04/29 21:06

访问权限控制的等级:public > protected > 包访问权限 > private

其中类的访问权限控制只有两种 public 和 包访问权限(即什么都不写的)

public:紧跟的成员被声明对每个人都是可用的,赋予所有类访问权限(无论同一包内还是其他包,这是与protected不同的地方,protected限制的是派生类)。

包访问权限:相同包内的其他类可用访问,不同包不能访问(对于不同包的所有类,该成员是private的)。继承的时候只能在同一个包内继承。

protected:赋予派生类访问权限而不是所有类(在同一个包内或者不同包内均可继承),也提供包访问权限(相同包内的其他类可以访问该元素)。

private:除了包含该成员的类之外,其他任何类都无法访问这个成员。

为了继承,一般的规则是将所有的数据成员都指定为private,将所有的方法指定为public;对数据成员提供getr/set方法


类的访问权限:public 和 包访问权限

每个文件都只能有一个public类,且类的名称必须完全与文件名相匹配。

如果设置为包访问权限的话,只是其他包内的任何类不能再创建该类的对象,说其他包内的类不能访问该类,而相同包内可以。


同一个类

同一个包(无论子类还是非子类)

不同包的子类

不同包的非子类

Private




Default



Protected


Public

只有public支持不同包的所有类访问成员。

0 0