android Kotlin- extend带有扩展功能的接口,为什么不工作?

thtygnil  于 2023-08-01  发布在  Android
关注(0)|答案(1)|浏览(101)

我试图通过LazyListScope接口及其扩展函数项(List,...)来理解LazyColumn内部发生的事情。这个概念对我来说是新的,我正在玩一点周围的prgramm。现在我想知道这一点:为什么这段代码没有从扩展函数中打印消息?如果我是正确的,方法**printInterface()**通过匿名对象实现了MyInterface。接口的扩展功能现在应该工作了,还是不工作?但是如果我运行程序,我看不到来自扩展函数的消息“Hello”。

fun main(args: Array<String>){

  printInterface {
         printExtension()

           }

       }

  fun printInterface(content: MyInterface.() -> Unit){

       }

  interface MyInterface{

        }

  fun MyInterface.printExtension() {
            println("Hello")
        }

字符串

u4dcyp6a

u4dcyp6a1#

您需要有一个示例并调用它来触发print

fun main() {
    printInterface {
        printExtension()
    }
}

fun printInterface(content: MyInterface.() -> Unit){
    content(MyClass())
}

interface MyInterface
class MyClass : MyInterface

fun MyInterface.printExtension() {
    println("Hello")
}

字符串

相关问题