访问权限控制
6.1包:库单元
包内包含有一组类,它们在单一的名字空间之下被组织在了一起。
6.2访问权限修饰词
包访问权限:当前包中所有的类都可以访问。
public:所有的类都可以访问。
private:自由类自己的成员可以访问。
protected:继承权限。基类可以把它的访问权限赋予派生类而不是所有类。
权限由大到小顺序:public——>protected——>包——>private
6.4类的访问权限
- 每个编译单元中只能有一个public类。
- public类的名称必须与类文件名相同。
- 类中可以完全不带public类,此时文件可以任意命名。
类只能是包权限或者public权限。
如果把构造器指定为private的话,别人就无法创建这个类的对象了。 name别人怎么获取这个类的对象呢?
可以创建一个static方法,返回这个类的引用。(单例模式)
控制对成员的访问权限的原因:
1)为了是用户不触碰他们不应触碰的部分。
2)接口与实现的分离,设计者改变类实现的时候不用担心对使用者造成影响。