码迷,mamicode.com
首页 > 其他好文 > 详细

Kotlin中,lateinit 和 lazy{} 的区别

时间:2019-01-16 11:46:15      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:nbsp   sdn   str   作者   .net   net   的区别   lin   报错   

1.lazy{} 只能用在val类型, lateinit 只能用在var类型 如 :
val name: String by lazy { "sherlbon" }
lateinit var adapter: MyAdapter
1
2
2.lateinit不能用在可空的属性上和java的基本类型上 如:
lateinit var age: Int  //会报错
1
3.lateinit可以在任何位置初始化并且可以初始化多次。而lazy在第一次被调用时就被初始化,想要被改变只能重新定义
4.lateinit 有支持(反向)域(Backing Fields)
---------------------
作者:Sherlbon
来源:CSDN
原文:https://blog.csdn.net/Sherlbon/article/details/72769843
版权声明:本文为博主原创文章,转载请附上博文链接!

Kotlin中,lateinit 和 lazy{} 的区别

标签:nbsp   sdn   str   作者   .net   net   的区别   lin   报错   

原文地址:https://www.cnblogs.com/gloryhope/p/10275489.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!