单例设计模式,这个是老毕视频中的一个还算重要的知识点。单例模式分为懒汉式和饿汉式两种类型,第一种懒汉式是这样的
class single{
private static single s=null;
private single(){}
public static single getInstance(){
if(s==null){
synchronized (single.class) {
if(s==null)
s=new single();
}
}
return s;
}
}
饿汉式的是
class single{
private static single s=new single();
private single(){}
public static single getInstance(){
return s;
}
}
为什么要这样呢?单例设计模式就是想只有一个实例,为了防止new出多个实例,就在本身private构造方法,
然后自身new出一个public实例,让其他类可以获得这个实例,第一个之所以叫懒汉式是因为这个类的s一开始就new出来了;
而后面的那个在方法里面才new出来了。 |