欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

单例模式---懒汉模式与饿汉模式

发布时间:2024/7/5 编程问答 44 豆豆
生活随笔 收集整理的这篇文章主要介绍了 单例模式---懒汉模式与饿汉模式 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
单例模式:
1)一个类只能创建一个实例
2)构造函数和静态变量(加载类时即初始化)需为private
3)get方法应该为public static,可供全局访问



//
懒汉模式 public class lazySingleton {private static lazySingleton singleton=null; //懒,所以就不实例化了,加载类较快,但是第一次访问类可能会有点慢private lazySingleton(){//nothing }public static lazySingleton getSingleton(){if(singleton==null){synchronized (this){if(singleton==null) //这里的二次判断很有必要啊,在多线程中同时到达第一个if的可能有多个,若此处没有二次二次判断,会导致new singleton()同步执行多次。singleton=new lazySingleton();}}return singleton;} }

 

//饿汉模式 public class hungrySingleton {private static final singleton=new hungerySingleton();//此处最好不要丢掉finalprivate hungrySingleton(){//noting }public static hungrySingleton getSingleton(){return singleton();} }

参考:Singleton单例模式(懒汉方式和饿汉方式)

          单例模式中的懒汉和饿汉模式的区别

 

转载于:https://www.cnblogs.com/jixiegongdi/p/10604789.html

总结

以上是生活随笔为你收集整理的单例模式---懒汉模式与饿汉模式的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。