java GOF23设计模式-饿汉式和懒汉式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java GOF23设计模式-饿汉式和懒汉式相关的知识,希望对你有一定的参考价值。
单例模式:保证一个类只用一个相同的实例,并且提供一个访问该实例的全局访问方法如任务管理器、回收站
饿汉式:
把构造器私有,则别人无法访问
同时提供一个私有的创建好的static的该实例属性
提供一个开放的方法返回该实例
public class Design
private static Design d =new Design(); //类初始化时,立即加载这个对象,没有延迟加载的优势
//即不使用对象会造成资源浪费
private Design()
public static Design getInstance() //因为实在类加载器时创建的实例,此时线程绝对安全,所以不用加synchronized锁住保证一个对象
return d;
/*懒汉式:延迟调用,即调用时创建实例
private static Design dd;
private Design();
public static synchronized Design getInstance() //可能有多个线程调用,即可能null同时创建多个对象,所以得锁住
if(s==null)
s= new Design();
return s;
*/
以上是关于java GOF23设计模式-饿汉式和懒汉式的主要内容,如果未能解决你的问题,请参考以下文章