什么';在Kotlin中,接口作为类的依赖项的含义是什么?

什么';在Kotlin中,接口作为类的依赖项的含义是什么?,kotlin,interface,Kotlin,Interface,这是什么意思?据我所知,接口不能实例化对象,如果可以的话,我应该在哪里实现someFunction()?您是正确的,您不能直接实例化SomeInterface,但您可以将接口的实现传递给SomeClass。这种方式SomeClass可以使用someFunction(),但不关心接口的底层实现细节(也称多态性) 您不能直接实例化SomeInterface,但可以将接口的实现传递给SomeClass。这种方式SomeClass可以使用someFunction(),但不关心接口的底层实现细节(也称多态

这是什么意思?据我所知,接口不能实例化对象,如果可以的话,我应该在哪里实现
someFunction()

您是正确的,您不能直接实例化
SomeInterface
,但您可以将接口的实现传递给
SomeClass
。这种方式
SomeClass
可以使用
someFunction()
,但不关心接口的底层实现细节(也称多态性)


您不能直接实例化
SomeInterface
,但可以将接口的实现传递给
SomeClass
。这种方式
SomeClass
可以使用
someFunction()
,但不关心接口的底层实现细节(也称多态性)


someInterface
val需要属于实现
someInterface
的类。这意味着您需要实现接口并将其对象用作参数
someInterface
保存该接口的实现实例。就像允许
Any
作为参数一样,您可以接收
String
Int
。。。一切。因为它们是Any.Related问题的实现(实际上是扩展,因为Any是类,但您可以关联):and.
someInterface
val需要属于实现
someInterface
的类。这意味着您需要实现接口并将其对象用作参数
someInterface
保存该接口的实现实例。就像允许
Any
作为参数一样,您可以接收
String
Int
。。。一切。因为它们是任何的实现(实际上是扩展,因为Any是类,但您可以关联)。相关问题:和。
interface SomeInterface {
        fun someFunction()
}

class SomeClass(private val someInterface: SomeInterface) {

}
interface SomeInterface {
    fun someFunction()
}

class SomeClass(private val someInterface: SomeInterface) {
    fun doSomething() = someInterface.someFunction()
}

class SomeImplementation(): SomeInterface {
    override fun someFunction() {
        println("did something")
    }
}

fun main() {
    val someClass = SomeClass(SomeImplementation())
    someClass.doSomething()
}