在kotlin中,与java不同的是,接口即可以有方法接口也可以有方法实现,实现此接口的类必须实现方法接口,但也可以重写已实现的方法。如下所示:
interface IDemo {
fun method() {
println("method invoked")
}
fun method2()
}
class IDemoImpl: IDemo {
override fun method() {
println("override method")
}
override fun method2() {
println("method2 invoked")
}
}
fun main(args: Array<String>) {
var idemo = IDemoImpl()
idemo.method()
idemo.method2()
}
在kotlin中,如果父类是一个普通的类,子类是一个抽象类,子类中的方法可以用一个抽象方法来override父类中的方法。如下所示:
open class BaseClass {
open fun method() {
println("BaseClass method")
}
}
abstract class ChildClass: BaseClass() {
abstract override fun method()
}
class DemoClass: ChildClass() {
override fun method() {
println("DemoClass method")
}
}
好了,今天就写到这里。