当需要共享的变量很多时,使用static变量占用内存的时间过长,在类的整个生命周期。
而对象只是存在于对象的整个生命周期。
//饿汉式 class Single//类一加载,对象就已经存在了。 { private static Single s = new Single(); private Single(){} public static Single getInstance() { return s; } }
//懒汉式 class Single2//类加载进来,没有对象,只有调用了getInstance方法时,才会创建对象。 //延迟加载形式。 并发过程中存在安全隐患。 { private static Single2 s = null; private Single2(){} public static Single2 getInstance() { if(s==null) s = new Single2(); return s; } }
原文地址:https://www.cnblogs.com/xiarongjin/p/8306569.html
时间: 2024-11-08 09:03:33