时间:2021-05-20
Kotlin this详解及实例
为了表示当前函数的接收者(receiver), 们使用this表达式:
如果this没有限定符,那么它指向包含当前代码的最内层范围.如果想要指向其他范围内的this,需要使用标签限定符。
带限定符的this
为了访问更外层范围(比如 类, 或 扩展函数, 或有标签的 带接受者的函数字面值)内的 this, 我们使用this@label , 其中的 @label 是一个标签, 代表我们想要访问的this所属的范围:
class A { // 隐含的标签 @A inner class B { // 隐含的标签 @B fun Int.foo() { // 隐含的标签 @foo val a = this@A // 指向 A 的 this val b = this@B // 指向 B 的 this val c = this // 指向 foo() 函数的接受者, 一个 Int 值 val c1 = this@foo // 指向 foo() 函数的接受者, 一个 Int 值 val funLit = lambda@ fun String.() { val d = this // 指向 funLit 的接受者 } val funLit2 = { s: String -> // 指向 foo() 函数的接受者, 因为包含当前代码的 Lambda 表达式没有接受者 val d1 = this } } }}感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Kotlin语言中调用JavaScript方法实例详解Kotlin已被设计为能够与Java平台轻松互操作。它将Java类视为Kotlin类,并且Java也将Ko
Kotlin的注解类详解及实例注解声明注解是将元数据附加到代码的方法。要声明注解,请将annotation修饰符放在类的前面:annotationclassFa
Kotlin开发Android应用实例详解相关文章:关于Kotlin语言的基础介绍:我们简单的知道了Kotlin这门新语言的优势,也接触了一些常见的语法及其简单
本文介绍了Kotlin+Retrofit+RxJava简单封装使用详解,分享给大家,具体如下:实例化RetrofitobjectRetrofitUtil{val
Kotlin单例实例详解单例的实现方法,可以通过同伴对象,或者lazy。示例:classHelloprivateconstructor(){companiono