Kotlin 继承

  • 继承

    在本章中,我们将学习继承。根据定义,我们都知道继承意味着将母类的某些属性累积到子类中。在Kotlin中,基类被命名为“Any”,它是Kotlin中声明的“any”默认类的超类。与所有其他OOPS一样,Kotlin也使用一个称为“:”的关键字来提供此功能。默认情况下,Kotlin中的所有内容均为final,因此,我们需要在类声明前使用关键字“ open”以使其可以继承。看一下下面的继承示例。
    
    import java.util.Arrays
    
    open class ABC {
       fun think () {
          print("Hey!! i am thiking ")
       }
    }
    class BCD: ABC(){ // 使用默认构造函数进行继承
    }
    
    fun main(args: Array<String>) {
       var  a = BCD()
       a.think()
    }
    
    尝试一下
    输出::
    
    Hey!! i am thiking 
    
    尝试一下
    现在,如果我们想覆盖子类中的think()方法,该怎么办?然后,我们需要考虑以下示例,在其中创建两个类并将其功能之一覆盖到子类中。
    
    import java.util.Arrays
    
    open class ABC {
       open fun think () {
          print("Hey!! i am thinking ")
       }
    }
    class BCD: ABC() { // 使用默认构造函数进行继承
       override fun think() {
          print("I Am from Child")
       }
    }
    fun main(args: Array<String>) {
       var  a = BCD()
       a.think()
    }
    
    尝试一下
    上面的代码将调用子类的继承方法,并将在浏览器中产生以下输出。像Java一样,Kotlin也不允许多重继承。
    
    I Am from Child