Kotlin学习——面向对象-继承

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chengxu_kuangrexintu/article/details/82559830

前言

上一篇博客我们讲到了Kotlin面向对象的封装特性,这篇博客要讲到了是Kotlin的继承特性。

继承

继承的定义是子类继承父类的属性和方法。

实例代码

创建一个父类

/**
 * 定义一个父类,父亲
 */
open class Father {
    var chactor:String = "内向"
    open fun action(){
        println("在公共场合喜欢大声喧哗")
    }
}

创建一个子类,继承父类

/**
 * 子类,孩子继承父亲
 */
class Son :Father(){
    override fun action(){
        println("儿子很乖,在公共场合很有礼貌")
    }
}

创建一个测试类

/**
 * 测试类
 */
fun main(args: Array<String>) {
    var son1 = Son()
    println("儿子的性格${son1.chactor}")
    son1.action()
}

运行结果
这里写图片描述
下面我解析上面用到的关键字openoverride

open关键字

在Kotlin编程语言当中,如果一个类要被继承,可以使用 open 关键字进行修饰。

override关键字

在基类中,使用fun声明函数时,此函数默认为final修饰,不能被子类重写。如果要允许子类重写该函数,那么就要在父类中手动添加 open 修饰它, 这样子类重写方法使用 override 关键词进行修饰。

猜你喜欢

转载自blog.csdn.net/chengxu_kuangrexintu/article/details/82559830