HurgerSingleton

2022-05-13 12:18:21 浏览数 (1)

饿汉式: 是否 Lazy 初始化:否 是否多线程安全:是 实现难度:易 描述:这种方式比较常用,但容易产生垃圾对象。 优点:没有加锁,执行效率会提高。 缺点:类加载时就初始化,如果资源较大会浪费内存,增加启动时间。 它基于 classloader 机制避免了多线程的同步问题,不过,instance 在类装载时就实例化, 虽然导致类装载的原因有很多种,在单例模式中大多数都是调用 getInstance 方法, 但是也不能确定有其他的方式(或者其他的静态方法)导致类装载,这时候初始化 instance 显然没有达到 lazy loading 的效果。

代码语言:javascript复制
package 设计模式八大考题.单例模式;

import java.util.concurrent.atomic.AtomicInteger;

public class HurgerSingletonDemo {
 
    private static HurgerSingletonDemo instance = new HurgerSingletonDemo ();

    private HurgerSingletonDemo(){}

    public static HurgerSingletonDemo getInstance() {
        return instance;
    }




}

0 人点赞