日报7月15日

今天预习了一下Kotlin的几种种单例模式
其中kotlin有五种单例模式分别是:

          1.饿汉式
          2.懒汉式
          3.静态内部类式
          4.双重校验锁式
          5.线程安全的懒汉式

主要预习了一下饿汉式 懒汉式
饿汉式:

          我们先用我们熟悉的java来实现以下饿汉式
               //java
                public class SingletonDemo{
                          private static SingletonDemo instance = new SingLetonDemo();
                          private SingletonDemo(){
                          }
                          public static SingLetonDemo getInstance(){
                                  return instance;
                          }
                   }
       最基础的饿汉式 也是最熟悉的  再来看一下我们的Kotlin来实现
           //Kotlin
            object SingletonDemo
            就解决了 一行代码 跟java比起来要省事很多。

懒汉式:

         //java 
           public class  LecationDemo{
           private static LecationDemo lecationdemo;
           private  LecationDemo(){}
           public static LecationDemo getInstance(){
              if(lecationdemo == null){
                           lecationdemo = new LecationDemo();
              }
              return lecationdemo;
         }
       }

   //kotlin
         class LecationDemo private  sturector(){
                companion object{
                    private var instance : LecationDemo ?= null
                    get(){
                      if(field ==null){
                          field = LecationDemo()
                      }
                      return field
                    }
                    fun get() : LecationDemo{
                    return instance!!
                    }
           }
           }

对比这两个 在Kotlin中 我们只是让主构造函数私有化并且自定义了属性访问器 但是里面构造是和java相似的。

再说下Kotlin的对象声明

 因为在学习了Kotlin中 知道了Kotlin类中并没有静态方法,但是 如果我们要用的时候,需要写一个可以不用一个类的实例来调用,但是我们需要去访问类的内部的函数 比如像单例;可以把类声明一个对象 ,用这个对象与其他的语言的静态成员是差不多的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值