1、访问权限控制的等级
从最大权限到最小权限依次是:public,protected,包访问权限(没有关键词)和private。
2、 权限
-
public权限:所修饰的成员声明自己对每个人都可用。若两文件在同一个路径下,且没设定包名,则Java会自动看作这两个文件隶属于该目录的默认包之中,因此可以提供和使用包访问权限。
-
protected权限:继承访问权限,也提供包访问权限。子类可以继承父类的所有方法,但得根据父类方法的修饰符来判断是否能访问。
-
包访问权限:当前包的所有其他类对这个成员都有访问权限,但对于包外的其他类,这个成员确实private. 继承而来的类可以访问父类的public成员和protected成员,但无法访问父类的private成员。
-
private权限:除了包含该成员的类之外,其他任何类都无法访问该成员。
3、 单例设计模式
作为类的static private成员而创建的,所以有且只有一个,而且通过public方法来获得该成员的引用,所以始终只能创建它的一个对象。
public class A {
private A(){ }
private static A a;
public static A getInstance(){
if(a == null){
return a = new A();
}else{
return a;
}
}