kotlin

33. 抽象类

2019-10-02  本文已影响0人  写代码的向日葵

1.抽象类和实现类的定义如下:


/**
 * 人类:抽象类不用open关键字
 */
abstract class Human {
    /**
     * 肤色
     */
    open var color: String = "ajj"

    /**
     * 语言
     */
    abstract var language: String

    /**
     *吃饭
     */
    abstract fun eat()
}

//中国人
class ZhHuman : Human() {

    override var color: String = "黄色"

    override var language: String = "中文"

    override fun eat() {
        println("用筷子吃饭")
    }
}

//美国人
class UsHuman : Human() {
    override var color: String = "黑色"
    override var language: String = "英语"
    override fun eat() {
        println("用刀叉吃饭")
    }
}

//非洲人
class AfHuman : Human() {
    override var color: String = "黑色"
    override var language: String = "葡萄牙语"
    override fun eat() {
        println("用手吃饭")
    }
}

2.调用

fun main(args: Array<String>) {
    val zhHuman = ZhHuman()
    val usHuman = UsHuman()
    val afHuman = AfHuman()
    println(zhHuman, usHuman, afHuman)

}
fun println(vararg human: Human) {
    human.forEach {
        println(it.color)
        println(it.language)
        it.eat()
    }
}

3.抽象类总结

上一篇 下一篇

猜你喜欢

热点阅读