十三、Java基础之单例模式
/*
一、设计模式是可以重复利用的解决方案
实现单例模式:
1.构造方法私有化
2.对外提供一个公开的静态的获取当前类对象的方法
3.提供一个当前类型的静态变量
*/
Singletom类
public class Singletom { //提供一个当前类型的静态变量 private static Singletom s; //将构造方法私有化 private Singletom(){} //对外提供一个公开获取Singletom的方法。 public static Singletom getWe(){ if(s == null){ s = new Singletom(); } return s; } }
public class Test01 { public static void main(String[] args){ Singletom s1=Singletom.getWe(); } }
二、单例模式有两种形式
1.饿汉模式
//饿汉模式(立即加载模式) public class Singtom1 { //提供一个当前类型的静态变量 private static Singtom1 s=new Singtom1(); //构造方法私有化 private Singtom1(){} //对外提供一个公开获取Singletom1的方法。 public static Singtom1 getInstance(){ return s; } }
2.懒汉模式
//懒汉模式(延迟加载方式) public class Singletom { //提供一个当前类型的静态变量 private static Singletom s; //将构造方法私有化 private Singletom(){} //对外提供一个公开获取Singletom的方法。 public static Singletom getWe(){ if(s == null){ s = new Singletom(); } return s; } }
当有些人一出生就有的东西,我们要为之奋斗几十年才拥有。但有一样东西,你一辈子都不会有,那就是我们曾经一无所有。