饿汉式
Single.java:
//假设构造中要执行1000行代码,要占用很大的资源,耗时很长(10秒) //每一次new Single对象需要10秒,运行1000行代码,要花费很多时间 //像这种情况,就适合使用单例模式,只new一次对象,以后就一直使用这个对象 public class Single { //私有的构造,构造方法私有化,调用这个类的人就不能直接使用new来创建对象 private Single(){ } private static Single aaaaa=new Single(); //返回值类型为Single public static Single bbbbbb(){ return aaaaa; } }
Test.java:
public static void main(String[] args) { Single sc = Single.bbbbbb(); }
懒汉式:
Single1.java
public class Single1 { private Single1(){ } private static Single1 s1=null; public static Single1 sb(){ if (s1==null){ s1=new Single1(); } return s1; } }
Test.java:
public static void main(String[] args) { Single1 sc = Single1.sb(); }