美文网首页
静态内部类单例模式

静态内部类单例模式

作者: 微风细雨007 | 来源:发表于2017-11-10 15:11 被阅读13次

    单例模式是项目中比较常用的,可以保证系统中一个类只有一个实例,其中静态内部类的是比较好的单例方法。

    1 2 3
    主要优点 提供了对唯一实例的受控访问 节约系统资源,提高系统的性能 允许可变数目的实例
    写法 私有化构造方法 创建静态内部类 写获取方法

    示例
    java方式

    public class Singleton {
        private Singleton() {
        }
    
        private static class LazyHolder {
            private static final Singleton INSTANCE = new Singleton();
        }
        
        public static Singleton getInstance(){
            return LazyHolder.INSTANCE;
        }
        
    }
    

    更新


    kotlin方式

    class Singleton private constructor() {
        companion object {
            fun getInstance() = Holder.INSTANCE
        }
    
        private object Holder {
            val INSTANCE = Singleton()
        }
    }
    
    • private constructor()私有化构造方法
    • object Holder 相当于静态内部类,object 是单例的修饰符
    • companion object 类似于java的静态变量static

    详细的双语言(Java与Kotlin)5种单例模式

    相关文章

      网友评论

          本文标题:静态内部类单例模式

          本文链接:https://www.haomeiwen.com/subject/xkmbmxtx.html