kotlin中抽象类

Posted loaderman

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kotlin中抽象类相关的知识,希望对你有一定的参考价值。

抽象类和接口很类似,抽象类不能被实例化需要使用abstract 关键字声明,抽象类实现接口后,接口中没有函数体的函数可以不重写,接口中的这些方法就自动被继承到实现接口的抽象类中,称为抽象方法

package loaderman.demo

open class base{
    open fun fn(){}
}
package loaderman.demo

abstract class Persons :base(){
    override abstract fun fn()

}
package loaderman.demo

open class Person :Persons(){
    override fun fn() {
        println("Person f")
    }

    open var mName: String = "Person name"
    open fun getName(): String {
        println(mName)
        return mName
    }
}
package loaderman

import loaderman.demo.Person


fun main(arg: Array<String>) {

    println(Person().fn())
}

抽象方法不需要使用open声明,因为抽象类本身就是可继承的

以上是关于kotlin中抽象类的主要内容,如果未能解决你的问题,请参考以下文章

Kotlin接口和抽象类 ( 接口属性和方法定义 | 接口默认方法实现 | 抽象类 )

Kotlin 在片段中找不到按钮 ID,为啥?

Kotlin:找不到符号类片段或其他 android 类

快速上手kotlin接口抽象类及泛型

快速上手kotlin接口抽象类及泛型

kotlin中抽象类