kizumi_header_banner_img

Hello! Beautifui Kizumi!

文章导读

单例模式


avatar
neet0316 2025年2月14日 38

单例模式

单例模式是23种常见的设计模式之一。

单例模式就是保证整个项目中某个类创建的对象只有一个。

单例模式实现模式常见的有 饿汉式 懒汉式

饿汉式

饿汉式,只要第一次使用到类,就会产生一个对象,降低加载效率,线程安全的

饿汉式单例模式 static修饰的变量是静态变量,在类首次加载时加载,类只加载一次 不希望外面可以直接拿到,而且在拿到对象之前可能需要一些初始化工作

public class TaskManager {
    private static TaskManager taskManager = new TaskManager();

    //不允许类外创建,否则就会出现多个对象
    private TaskManager() {
        System.out.println("执行无参构造");
    }

    //获取实例对象
    public static TaskManager getInstance() {
        return taskManager;
    }

    public static void method() {
        System.out.println("This is a static method from TaskManager");
    }
}

饿汉模式(lazy load

public class PoolManager {

    //懒汉式
    //私有构造方法

    private PoolManager() {

    }

    private static PoolManager poolManager;

    //提供一个方法,当方法做完一些操作之后在返回
    //明确要使用对象时,再返回对象
    public static PoolManager getInstance() {

        if (poolManager == null) {
            poolManager = new PoolManager();
        }
        return poolManager;
    }

}

总体来说

饿汉模式 线程安全但会降低加载效率。

懒汉模式 线程不安全但节省加载时间。

枚举类也是单例模式

public enum Season {  
    SUMMER;
}


评论(0)

查看评论列表

暂无评论


发表评论

表情 颜文字

插入代码