对一个interface进行继承的时候,接口中已经实现的方法可以不用覆盖:
interface B {
fun f() {
print("B")
}
fun a()
}
class C() : B {
//B中的f()已经实现过,可以不用覆盖了
override fun a() {
also { print("i'm a in c") }
}
}
对多个interface进行继承的时候,接口中如果有相同的方法,那么这个方法必须被覆盖:
interface A {
fun f() {
print("f in A")
}
}
interface B {
fun f() {
print("f in B")
}
fun a()
}
class C() : A, B {
override fun f() {
print("f in c")
}
override fun a() {
also { print("i'm a in c") }
}
}
网友评论