Java设计模式:单例设计模式
单例设计模式大多用来做工具类,又分为饿汉模式和懒汉模式
饿汉模式:
- 创建一个工具类,私有化构造器,防止外界新建对
- 在这个类中创建一个此类的私有静态变量实例
- 创建public静态方法,返回这个实例
好处:使用简单,不用考虑线程问题
缺点:当加载类时会初始化static也会加载到方法区,一直占用空间直到结束,无论是否用到这个实例
public class Until {
private static Until instance = new Until();
public static Until tool(){
return instance;
}
public void run(){
System.out.println("飞起来了");
}
private Until(){
}
}
Until u = Until.tool();
Until s = Until.tool();
System.out.println(u+""+s);//地址自然一样了
u.run();
s.run();//一般用单例设计模式用来创造工具类
懒汉模式:
- 私有构造器
- 创建此类的私有静态类
- 创建公共的静态方法,判断是否已经有此实例,如果有,返回实例,如果没有则new一个实例并返回
好处和坏处与饿汉模式相反,要考虑到县城问题,这里写的懒汉模式只是一个简易的,没有考虑到线程的问题,以后再进行修改;
public class Until {
private static Until instance ;
public static Until tool(){
if(instance==null){
instance = new Until();
}
return instance;
}
public void run(){
System.out.println("飞起来了");
}
private Until(){
}
}

浙公网安备 33010602011771号