饿汉式 实现难度:易描述:这种方式比较常用,但容易产生垃圾对象。
单例模式有什么用:
其实单例的作用在于避免产生太多实例,也就是不用new那么多次,new一次就占用一次内存的资源,new多了电脑也会慢的。实际开发中简单的例子就是网站的“在线人数计数器” ,银行取款。windows操作系统的垃圾回收和设备管理器的打开;
适用场景: 1.需要生成唯一序列的环境
2.需要频繁实例化然后销毁的对象。
3.创建对象时耗时过多或者耗资源过多,但又经常用到的对象。
4.方便资源相互通信的环境
优点:1.实现了对唯一实例访问的可控
2.对于一些需要频繁创建和销毁的对象来说可以提高系统的性能。
优点:没有加锁,执行效率会提高。缺点:类加载时就初始化,浪费内存。
public class Singleton{
private static Singleton instance = new Singleton();
private Singleton(){}
public static Singleton getInstance(){
return instance;
}
}