kotlin之的类的继承

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/linzhefeng89/article/details/100714659

前言

在Java中类的继承默认是继承父类的方法和参数的,但是在kotlin中默认是不继承的,那么我们接下来来验证。

kotlin类默认是不继承的

首先我们定义一个BirdOne 的类

class BirdOne {

    var weight: Int = 10

    fun fly() {
        println("fly")
    }

}

接着我们编写一个类BirdImpl,我们会发现我们的编译器通过不了。
在这里插入图片描述

kotlin实现类的继承

那么我们该如何实现我们的类的继承呢,非常的简单之需要在我们的父类上增加一个open关键字就可以实现我们的类的继承,因此我们改造我们的BirdOne类,代码如下:

open class BirdOne {

    var weight: Int = 10

    fun fly() {
        println("fly")
    }

}

这时候我们会发现我们的编译会正常通过了。
在这里插入图片描述
那么剩下的调用就和Java的实现形式差不多了,我们在此处编写一个主入口类,代码如下:

class BirdDemo {

    companion object {

        /**
         * 主入口函数
         * @JvmStatic
         */
        @JvmStatic
        fun main(args: Array<String>) {
            val birdImpl = BirdImpl()
            birdImpl.fly()
        }

    }

}

执行完成以后会看到我们正常调用了我们的父类的fly方法。

猜你喜欢

转载自blog.csdn.net/linzhefeng89/article/details/100714659