本文主要是介绍GOF四人帮的23种设计模式 --- 单例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
设计模式
设计模式是GOF四人帮经过整理和收集,集合各面向对象大佬经验总结出的经典设计传奇。它能很好的帮我们解决一些特定场景的问题,使我们的系统结构更加清晰,代码更加简洁,性能更加棒,扩展性高。
单例模式
设计单例的是为了节省系统创建对象的开销。
//单例比较简单,直接看代码就懂。
/*** 懒汉单例模式*/
public class LazySingletonInstance {private static LazySingletonInstance lazySingletonInstance = null;private LazySingletonInstance(){}public static LazySingletonInstance getInstance(){synchronized (LazySingletonInstance.class){if(lazySingletonInstance == null){lazySingletonInstance = new LazySingletonInstance();}return lazySingletonInstance;}}public void println(){System.out.println("这是懒汉单例模式!!!");}
}/*** 饿汉单例模式*/
public class HungryISingletonnstance {private static HungryISingletonnstance hungryISingletonnstance = new HungryISingletonnstance();private HungryISingletonnstance() {}public static HungryISingletonnstance getInstance(){synchronized (hungryISingletonnstance){return hungryISingletonnstance;}}public void println(){System.out.println("饿汉单例模式");}
}/*** 单例设计模式,用来节省系统开销*/
public class SingletonPattern {public static void main(String[] args) {LazySingletonInstance lazySingletonInstance = LazySingletonInstance.getInstance();lazySingletonInstance.println();HungryISingletonnstance hungryISingletonnstance = HungryISingletonnstance.getInstance();hungryISingletonnstance.println();}
}
单例算是最简单的设计模式了,希望我的这个Demo对你们有所帮助!
少年,努力学习吧!
这篇关于GOF四人帮的23种设计模式 --- 单例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!