首页  >  文章  >  Java  >  如何利用Java枚举实现单例模式?

如何利用Java枚举实现单例模式?

WBOY
WBOY转载
2023-04-23 11:40:171910浏览

1、实现步骤

(1)内部类使用枚举

(2)在枚举类的构造器里初始化

(3)对外部提供的获取单例的方法

(4)获取单例对象,返回并测试

2、实例

public class SingletonObj {
    //内部类使用枚举
    private enum SingletonEnum {
        INSTANCE;
 
        private SingletonObj singletonObj;
//在枚举类的构造器里初始化singletonObj
        SingletonEnum() {
            singletonObj = new SingletonObj();
        }
 
        private SingletonObj getSingletonObj() {
            return singletonObj;
        }
    }
 
    //对外部提供的获取单例的方法
    public static SingletonObj getInstance() {
        //获取单例对象,返回
        return SingletonEnum.INSTANCE.getSingletonObj();
    }
 
    //测试
    public static void main(String[] args) {
        SingletonObj a = SingletonObj.getInstance();
        SingletonObj b = SingletonObj.getInstance();
        System.out.println(a == b);//true
    }
}

以上是如何利用Java枚举实现单例模式?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:yisu.com。如有侵权,请联系admin@php.cn删除