Kotlin “和”之间有什么区别吗;“接收者对象”;及;分机接收器“;
根据文件很难说 所以我想知道接收器对象和扩展接收器是否相同?或者名称是否取决于上下文?扩展接收器是接收器对象,而接收器对象是调度接收器或扩展接收器 在一个类中,可以为另一个类声明扩展。在这样一个扩展中,有多个隐式接收者——可以在不使用限定符的情况下访问其成员的对象。声明扩展的类的实例称为dispatch receiver,扩展方法的receiver类型的实例称为extension receiver 在上面的示例中,Kotlin “和”之间有什么区别吗;“接收者对象”;及;分机接收器“;,kotlin,kotlin-extension,Kotlin,Kotlin Extension,根据文件很难说 所以我想知道接收器对象和扩展接收器是否相同?或者名称是否取决于上下文?扩展接收器是接收器对象,而接收器对象是调度接收器或扩展接收器 在一个类中,可以为另一个类声明扩展。在这样一个扩展中,有多个隐式接收者——可以在不使用限定符的情况下访问其成员的对象。声明扩展的类的实例称为dispatch receiver,扩展方法的receiver类型的实例称为extension receiver 在上面的示例中,foo函数有两个隐式接收器:C是调度接收器,D是扩展接收器。如果foo是在类别C之
foo
函数有两个隐式接收器:C
是调度接收器,D
是扩展接收器。如果foo
是在类别C
之外声明的,那么它将只有一个接收器,即扩展接收器D
简而言之,接收方对象和扩展接收方可以相同,但还有另一种类型的接收方对象,称为分派接收方
有关更多详细信息,请参见。扩展接收器是接收器对象,而接收器对象是调度接收器或扩展接收器
在一个类中,可以为另一个类声明扩展。在这样一个扩展中,有多个隐式接收者——可以在不使用限定符的情况下访问其成员的对象。声明扩展的类的实例称为dispatch receiver,扩展方法的receiver类型的实例称为extension receiver
在上面的示例中,foo
函数有两个隐式接收器:C
是调度接收器,D
是扩展接收器。如果foo
是在类别C
之外声明的,那么它将只有一个接收器,即扩展接收器D
简而言之,接收方对象和扩展接收方可以相同,但还有另一种类型的接收方对象,称为分派接收方
有关更多详细信息,请参阅。非常感谢这句话让我明白了“如果foo是在C类之外声明的,那么它将只有一个接收器,即扩展接收器D。”非常感谢这句话让我明白了一切“如果foo是在类C之外声明的,那么它将只有一个接收方,即扩展接收方D。”
class D {
fun bar() { ... }
}
class C {
fun baz() { ... }
fun D.foo() {
bar() // calls D.bar
baz() // calls C.baz
}
fun caller(d: D) {
d.foo() // call the extension function
}
}