如何调用外部类&x27;来自Kotlin内部类的超级方法?
Kotlin与Java的如何调用外部类&x27;来自Kotlin内部类的超级方法?,kotlin,Kotlin,Kotlin与Java的OuterClass.super.method()的等价物是什么 示例(Java语言): 使用super@OuterClass.method()语法: open class C { open fun f() { println("C.f()") } } class D : C() { override fun f() { println("D.f()") } inner class X { fun g() {
OuterClass.super.method()
的等价物是什么
示例(Java语言):
使用
super@OuterClass.method()
语法:
open class C {
open fun f() { println("C.f()") }
}
class D : C() {
override fun f() { println("D.f()") }
inner class X {
fun g() {
super@D.f() // <- here
}
}
}
开放类C{
打开fun f(){println(“C.f()”)}
}
D类:C(){
重写fun f(){println(“D.f()”)}
内类X{
Fung(){
super@D.f()//这在Kotlin中是等效的:
internal class Outer {
internal inner class Inner {
fun myMethod() {
println(super@Outer.toString())
}
}
override fun toString(): String {
return "Blah"
}
}
根据上的本节,您可以简单地调用外部方法:
class Outer {
inner class Inner {
fun foo() {
bar()
}
}
private fun bar() {}
}
你能举一个Java代码使用的例子吗?请注意,Kotlin中的嵌套类默认为static。对于内部类,你必须使用internal关键字。
class Outer {
inner class Inner {
fun foo() {
bar()
}
}
private fun bar() {}
}