kotlin抽象类和继承

kotlin抽象类和继承

抽象类

一个类和其一些成员可以被声明为抽象。 抽象成员在其类中没有实现。 请注意,不需要使用open来注释抽象类或函数。

可以用抽象来覆盖一个非抽象的open成员 -

open class Base {
    open fun f() {}
}

abstract class Derived : Base() {
    override abstract fun f()
}
Kotlin

继承一个抽象类:父类使用abstract,而不使用open在class的开头,父类中的方法同样也是。


简单实例:


父类Human:

abstract class Human(var name:String) {
    abstract fun eat()
}

子类man:

class man( name:String):Human(name){
    override fun eat() {
        println("${name}大口吃")
    }
}

子类Woman:

class Woman(name:String):Human(name){
    override fun eat() {
        println("${name}小口吃")
    }
}

测试test文件:

fun main(args: Array<String>) {
    var person=man(name = "金三炮")
    person.eat()

    var person1=Woman(name = "朴金汇")
    person1.eat()
}

运行结果:

金三炮大口吃
朴金汇小口吃

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值