kotlin 单例模式

最近在学习kotlin,下面总结一下 单例模式的写法:
1.饿汉模式,顾名思义,饿汉模式,只要有资源就去new 一个对象,在java中,对应的就是 new ClassName 这种。而kotlin 的写法则如下:

//饿汉
object SingleClass2;

2.懒汉模式写法:

//懒汉
class SingleClass private constructor() {
    companion object {
        private var instance: SingleClass? = null;
        //       Synchronized添加后就是线程安全的的懒汉模式
        @Synchronized
        fun get(): SingleClass? {
            if (instance == null) {
                instance = SingleClass();
            }
            return instance;
        }
    }
}

3.DCL模式的懒汉模式写法:

//简易版本的DCL kotlin 写法
class SingleClass2 private constructor() {
    companion object {
        val instance: SingleClass2 by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) {
            SingleClass2();
        }
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 作者已经搬迁去隔壁网站,也欢迎大家关注我们的写作团队:天星技术团队。 题外话 上一次被人说文章名字取得不霸气,于是...
    点先生在这阅读 614评论 1 1
  • 最近在写项目的同时也用到了单例模式,kotlin的单例还不是很会写,现在就总结下java写法对应的kotlin是如...
    李die喋阅读 437评论 0 2
  • 前言 前三篇主要讲了下Kotlin语言的基本用法,以后在写关于Kotlin文章的时候可以java和Kotlin一起...
    Heweii阅读 575评论 0 2
  • 前言 单例模式顾名思义线程中进程中创建类的唯一实例。 Object 实现饿汉式 Kotlin 就这么清爽,我们反编...
    巴黎没有摩天轮Li阅读 1,617评论 0 1
  • 5种常见单例 饿汉式 懒汉式 同步锁式 双重检查式(double-check) 内部类式 1. 饿汉式 优点:简单...
    dashixun阅读 405评论 0 0