美文网首页
kotlin和java对比

kotlin和java对比

作者: deviche | 来源:发表于2020-06-27 20:29 被阅读0次

    Any相当于顶级父类Object

    companion object中声明的变量类似于Java中的静态变量

    kotlin没有new关键字

    data class 相当于java bean

    laterinit 与by lazy 是Kotlin中两种不同延迟初始化的实现。

    laterinit 只用于变量var     by lazy 只用于常量val

    lazy()方法只是接受一个lambda并返回一个Lazy<T> 实例的函数,返回的实例可以作为实现延迟属性的委托:第一次调用get()会执行已传递给lazy()的lambda表达式并记录结果,后续调用get()只是返回记录的结果。

    lazy()方法常用于只获取不赋值并且多次使用的对象。

    laterinit则用于只能生命周期流程中进行获取或者初始化的变量

    laterinit 不能用于可空的属性上和java的基本类型上:(Int、Long等)

    laterint 可以在任何位置初始化,并且可以初始化多次。而by lazy只初始化一次

    1人点赞

    Kotlin

    作者:差不多先生Ai

    链接:https://www.jianshu.com/p/8e8718285bee

    来源:简书

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    相关文章

      网友评论

          本文标题:kotlin和java对比

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