本文主要作为一个基础的普及文章,简单介绍单例模式的三种理解,为了在看单例模式攻防这篇文章做一些简单的铺垫。
单例模式是最简单的设计模式之一,提供了一种创建唯一对象的方式,用于保证仅有单个唯一的对象访问方式,可以直接访问而不需要或避免对该类的实例化。
应用于某些需要保证唯一对象的场景,比如配置信息类、连接池类、ID生成器类、全局变量类等,接下来介绍下三种常见的单例模式写法:
饿汉式
默认直接实例化的情况比较简单直接,缺点在于类一启动就申请了内存空间,即使没有被调用,因此有了第二种懒汉式写法,即在实际使用的时候才进行实例化来申请内存。
class Demo1
{
//author: suoxd123@126.com
private Demo1() {
}
private static Demo1 demoItem = new Demo1();
public Demo1 getInstance