在 Kotlin 中,接口的默认函数是使用 default 关键字进行声明的。默认函数在接口中有一个默认的实现,因此可以在实现接口的类中选择性地进行重写。与 Java 不同,Kotlin 中没有 @Override 注解,因此在实现接口的类中不需要使用 override 关键字来重写默认函数。只需要按照普通的函数实现方式在类中实现接口的默认函数即可。以下是一个示例:

interface MyInterface {
    fun myFunction() {
        println("Default implementation")
    }
}

class MyClass : MyInterface {
    // 可选择性地重写接口的默认函数
    override fun myFunction() {
        println("Custom implementation")
    }
}

fun main() {
    val obj = MyClass()
    obj.myFunction() // 输出 Custom implementation
}

在上述示例中,MyInterface 接口中的 myFunction() 函数具有默认实现,而 MyClass 类重写了该函数,因此在 main() 函数中调用 obj.myFunction() 输出的结果是 "Custom implementation"。如果 MyClass 类没有重写 myFunction() 函数,则输出的结果是 "Default implementation",即接口的默认实现

Kotlin 的interface类中默认函数如何声明java类调用的时候可以不用Override

原文地址: https://www.cveoy.top/t/topic/i0Q4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录